Forrester: You're spot-on with your observations.
I've DM'd around 15 5-6 hour sessions for my group so far and I can tell you from pure play experience that if you as a DM get off the ball even a little bit, the situation you describe is
extremely common, ie the "combat that should have been over half an hour ago but looks like it will go on a half hour more".
This situation is wholly preventable but it requires you to be actively monitoring the situation and thinking on your feet a little bit. If you do nothing but throw monsters at the players and fight to the death every time you WILL end up in that place sooner or later.
Check out a thread I had a while ago (on the WotC boards) where I and a few other people discuss what to do to avoid falling into this:
"Making Combats that Resolve Quickly"
Ok, I really need a bit of help here.
First I should pre-face by stating that I very much like the combat system. Rounds go by quick, everything is easy to arbitrate, the action is fast and engaging, etc, etc. That part is good.
What I have problem with it that they take a long time, sometimes seemingly forever, to 'wrap it up'. A combat starts out with fast and furious tactics, everyone's into it and everything. But it takes a whooole dang lot of these 'furious tactics' to get the combat to actually being finished.
...and it goes on from there. Some really good suggestions towards the end.
PS, As to the replies you've gotten so far, I'd venture to say almost none of them are coming from an actual play experience
especially those that are asking for you to post specifics or stats so that they can have a little imaginary simulation of "what should have happened". Guys... if the OP is saying that his fights drag,
it's because his fights drag. What do you think you're accomplishing by refuting that... that you're going to convince him through text that his fights actually don't drag, that he's just wrong about that? Seriously... the guy's coming coming in with a specific problem, and asking for people to suggest solutions. Either suggest one or don't, but don't try to convince him that he doesn't have the problem in the first place, that's just silly.