He has a thankless job, imo. He's stuck with a character the writers are too scared to alter, and those very writers were (are?) giving him ****ty lines that made him lose all credibility with the audience.
I know I keep going on about this, but he was handled perfectly during the Smackdown Six era. Either he had better people scripting his promos, or he was given free reign. Whatever it was, he really was popular even as a heel back then. The reaction to his face turn was insane.
His promo work has got a bit better recently imo, it seems whoever is writing them now (or he himself) has been given permission to acknowledge the fact that he routinely gets a poor reception, his interview with the Miz a while back included something like "I know what it's like to headline Wrestlemania with Shawn Michaels and get booed out of the building", personally I think touches like that do help establish a bit more credibility and give a touch of realism to things, but in reality I think until he is turned heel again and then turned back to face he will never win over the majority of the crowds he performs in front of.
I go on about this as well, but it really pisses me off no end the way he gets treated. For one, it's obvious he is an incredibly hard working guy who really busts his ass to put on the best show possible for the crowd and really seems to care about what he is doing. Secondly, he's not that bad in ring, no worse than a lot that has gone before him, and he has improved immensely. His TLC matches with Edge show how he's willing to take big bumps to put on a show. Thirdly, I know there are parts of the crowd who grumble at Batista, but he is mega over. Cena is, was, and always will be twice the worker Batista is in pretty much every aspect, but yet it's despised by so many.
I suppose it is still very "fashionable" to boo Cena etc..But for me it's just got to a stage where its tedious, people need to grow up and move on. Like you say, the fact that the writers aren't really able to change his character or even turn him heel due to all the merchandising issues etc... but the only way Cena can ever really get over now is if he is turned into a heel in the same way that the Rock was, it would undoubtedly be a success, and the momentum generated from a turn back to face would be immense and probably very well received.
Props to the guy imo, by no means a favourite of mine, but he certainly has my respect.