Ultimately if you compare Halo 3 and Reach to Modern Warfare 2, its clear to see what happened. Halo 3 pretty much went toe to toe with that game. Reach came out and couldn't compete with it. That has to prove something right?
CoD4 was also a new kid on the block. If you remember, CoD didn't really explode until 4. 3 also had heavier advertisement and hype train placement (MNF ad, Burger King tie-in, etc).
It should also be noted and not ignored that Call of Duty has IMMENSE playerbase inertia right now. They've recieved yearly full-fledged games at a steady pace. They're also comfort food, since players also know they're getting a familiar sandbox with each title (not really much room to rework things when you've only got about a year and a half to make each one - versus Halo's usual 3 year cycle). I guess a term you could use is that Call of Duty has successfully Maddenized itself.
2007: 3 / CoD4
2008: World at War
2009: Halo Wars , Halo ODST / MW2
2010: Halo Reach / BLOPS
2011: Anniversary / MW3
2012: 4 / BLOPS2
Microsoft spent the entirety of 2009 training people that if a Halo doesn't have a number after it, it's a sidestory. Activision spent the entirety of 2005, 2006 2007, 08, and 09 training people that every Call of Duty was a full length title. They've succesfully erased the memory of CoD titles like Big Red One from the collective gamer memory.
Bungie's not really a company that's sees fit to repackage a Halo and put it out as a new title. They even said in multiple vidocs that they were told by their publisher that Microsoft wouldn't care if they were just handed a polished and slightly updated Halo 3, as long as they got a new Halo title by their release date. So in a sense Halo is the opposite of comfort food in that Bungie changed the game each time it came out. They don't really see the point of making a new Halo without looking back at the previous one, tearing it down and putting it back together to try to get closer to what they want. The whole confusion and marketing clusterfuck over ODST and later Reach (I still get people asking me if Reach is just an ODST style short sidestory game), Reach not getting the full advertising might of Halo 3 behind it (it got roughly the effort put into ODST)... I can see why they've gone with the safe name of Halo 4 now and the safe and comfort of using the Master Chief again.
Halo 4 is going to be a solid game for sure, but any sales woes Reach even comes close to having, I'm going to assign majority of responsibility on Microsoft as the publisher. Maybe some people were feeling bitter about the divorce and didn't want to fully back up a parting developer (it's happened before). Maybe they're cutting costs and don't want to pay for MNF spots and full blown restaurant/soda tie-ins. Currently as a gamer, I'm witnessing Microsoft putting more money and marketing and DLC financing support behind Gears of War 3. As a developer who has worked with Microsoft before, I see some corporate cattiness from the omission of Bungie from the startup of Anniversary.
We saw the preview of a fully Microsoft controlled Halo title with the Halo Wars DLC support and pricing. I'm already seeing an indicator again with MS fully controlling Reach - we've gone from monthly free new gametypes for the playerbase to new gametypes only being playable in matchmaking (CE Magnum mode) if you pay up for the new maps.
Microsoft never really seems to get how to support any software line they've put out on their own, especially games. They're a multi-business corporation that could close their console division overnight and not even blink. In fact if they did that their shareholders would probably mass mail them roses. They're vengeful to any affiliate or company that they percieved as wronging them or leaving them, they have a reactionary culture instead of a proactive culture, and they hire people who are good at cutting corners and value-adding instead of people that have designed games to run their console division. They almost have as bad of a inter-department rivalry culture as Sony (at least MS can get all the kids to sit down once a year)
Peter Moore got video games, having been the president of Sega of America before. Under his rule was probably one of the better times for Halo fans, even though not everything went Bungie's way under him. Since Mattrick has replaced him, it's been (in my opinion) a slow downhill. Maps going free have stopped , maps reducing in price has slowed down, we haven't even gotten an outright free map release like Cold Storage for Reach at this point (even with all the crazy requirements attached to Cold Storage's appearance in matchmaking). Call of Duty has gotten more and more stage time at the E3 conferences, and Halo has gotten less and less. At the last E3 Microsoft practically had the game demonstrations on a conveyor belt, they were switching so fast.
This post is kind of getting long at this point, but what I really want to see from all this is for Microsoft to actually start backing their own franchise over IPs they don't own, regardless of with inhouse or second party made them. Halo is their Mario, but they keep treating it like their Metroid. I didn't see a single damn ad for Anniverary on TV. I've seen CoD hundreds of times and Skyward Sword about as many.