This is all booking's fault to be fair. His first real feud on Raw (besides the cup of tea with Christian), was Chris Jericho. Jericho is a guy who was debuted as a heel in the WWE and was cheered for being exciting and charismatic. He's a great heel, but there is, and will probably always be, a contingent that will cheer for him. (as seen from the events where there was a mixed reaction.) His second major feud? Kurt Angle. The booking staff SHOULD have seen the writing on the wall, that Angle was too popular to be booed. When you have fans cheering a performer over a RETARD, his heel card has pretty much been used up. The only guy he really gets any kind of positive reaction against is Edge.
Cena, let's face it, is probably the next coming of Sting. I say that because with both the chase is better than the catch. I also feel the Cena should get a feud with someone else, as there is simply more to do with Edge right now (you can tap a feud with Carlito that preps him for the Main Event, and there's also, dare I say, Triple H, who he has good ring chemistry with.) Give Cena a good feud with Orton and Umaga to put him back in position for a feud down the road, when it will be NEW and INNOVATIVE again.
I'm trying not to play the obvious "Turn him Heel" Card, yet.