What you'd have to do is create a plugin that pulls the title from YouTube and saves it to the database, to then be displayed each time the page is loaded.
@Ducks:
echo substr($src, strrpos($src, '<title>') + 7, strrpos($src, '</title>') - strrpos($src, '<title>'));
You could you preg_match as an alternative to this. If you want to use the code you've written, stripos would be better because it's case-insensitive. BTW, why would you want to search starting at the end of the HTML document?
Code:
preg_match('%<title>([^<]+)<\/title>%i', file_get_contents ($url), $matches);
$title = $matches[1];