Come play with me and a few of the very good players I play with some night and I'll show you... like Halo, it's all based on what's going on at the time. Where your team is, where the other team is, and what locations are open based on that. And it changes with game type...
Here's the key, anything is controllable with a good group of players. The vast majority of gamers though play alone, or at least no where near a full team of great players. Do you get bad spawns in Halo? Sure, but not at the frequency you get them in CoD, and it has to be because of the instant spawning, there's now way a game can keep track of 12-16 people all spawning instantly after each death and not mess it up a lot every game.
The one key advantage Halo has here is that most games are capped at 8 people, with 12-16 people in CoD, that probably plays a larger role in the garbage spawns than anything else.
The main reason I hate instant respawning is because you aren't penalized for dying, how many times does a guy spawn in CoD and run right back to where he died and try to mop up the guy that just killed him? Sometimes it doesn't even give you enough time to move to a new location before you have to worry about that guy coming back.
Like I said, I'm open to the idea if they can make it work, but from my experiences in other games, it just doesn't work on a consistent basis.