Ceci est un problème fort connu, à savoir que le "." dans une regexp prend tout sauf les retours de lignes.
Heureusement, il y a la parade qui est le flag "s":
Citation :
Avec cette option, le méta-caractère point (.) remplace n'importe quel caractère, y compris les nouvelles lignes. Sans cette option, le caractère point ne remplace pas les nouvelles lignes. Cette option est équivalente à l'option Perl /s. Une classe de caractères négative telle que [^a] acceptera toujours les caractères de nouvelles lignes, indépendamment de cette option.
Utilise donc:
preg_match('#<b>Options: </b></td><td class=\'ann_cell\' width=\'363\'>(.+)</td>#/s', $source, $options);