Since the HTML is poorly formated you probably need to either write your own regexp to remove tags or clean up the HTML before trying to remove tags.
You could try this to remove everything that "looks like" a tag:
$str = preg_replace("/<.*?>/", " ", $str);