1. I can't say off hand what the problem might be, but I do have a suggestion. Put an eprint(trace_ent) somewhere after your traceline and see what you're getting for results. Are the doors even being found?
2. It's doable, but it's a bit more complex than the usual AI. One simple way would be to change the monster targeting code to look for doors if it can't find a player. This would make them dumb as they would just attack whatever doors they see. Smarter stuff would involve only attacking doors if they could see a player before, but can't now, with some sort of timeout.
The way to really do this would be with real navigation support, so that the monster knows that to get from point A to point B, it should smash down door C on the way. For info on that sort of thing (or any advanced AI code) the bot tutorials are your best bet. (The enhancing tutor bot series, I forget the link, is really good.)
Edit: found it:
3. There's nothing in having doors be +use able and having health that would inherently conflict. However, to do what you want would require modifying the basic door code. If I recall correctly, doors with heath open when they are "killed", so having them destructible would require changes. Furthermore, having health may (I forget exactly) have effects on other door functions, like how they respond to being triggered and what not, so you'd need to look into that.