Remember now, COD is among the biggest name if not the biggest name in FPS franchise. What does this mean, people will buy the game regardless of being good. Just like MW3 which is not a continuing the story, but instead you see everything through Ghost's eyes in COD4 and MW2.
Back to what I said, I am probably among the people that like BO the most on this forum, but I do say this. COD at the moment is overrated, it's not selling anymore because its great - but because its more popular and everyone have friends that plays it. Regardless of this, I will go the newest Ghost Recon game and BF3 anyday.
Since in COD franchise, I can't see how 3 companies can make a game good. Best example is MoH, where SP is among the best SPs I have ever played in term of feeling. Where MP failed in most aspects other than gamemodes, I really liked the ideas for gamemodes. Shame it was poorly executed and rushed bit too much.
But back to what you said, I loved to use the argument most sold is the better product before but that is not always true. Special not in the gameworld where people have different tastes and where the aspect of the game itself is different. Since COD will always be a arcade FPS where BF will present reality little bit better then what other games do it. Maybe the few games that beat it is games like Ghost Recon, AA series and Op Flashpoint. Which is again not really trying to conquer the action marked, but catering to the old fans instead.