1) It's probably an act, as stated. He went to Eton, so he can't be all THAT stupid (famous last words).
2) He's a politician. That means he's VERY good at projecting a false front, and making people think he's something he's not. It also means he has to come across as harmless and friendly.
3) When he cocks up, he says so. That alone is enough to put him above others who reel out all sorts of excuses about why they did what they (deliberately) did.
4) He cocks up a lot. I'd rather have someone who cocks up than covers up.
5) He's backed several quite good projects - banning alcohol on the Tube, the Olympics (as much as I hated it, people seemed to enjoy it generally), Boris bikes (getting us into the 21st century in terms of transport, behind just about every other EU country that already has them, using a way that doesn't involve pandering to drivers or spending lots of money), and the Thames airport is probably quite a sensible idea. I'm not aware of any completely ludicrous ideas that he's backed (which is either fabulous PR or decent common sense).
6) In the expenses scandal, he had a few taxi fares totally a few hundred pounds that were allowed under the rules. You could say they were excessive (for taxi fares), but you'd be hard-pushed to put them on the same scale as claiming for houses for ducks or second homes costing millions of pounds.
If you want people to trust you, one of the best methods is to make them feel superior to you, and supporting good ideas instead of attacking them. He pretty much has this done.
And, simply, out of all the politicians I've seen, he's probably the least scummy. I imagine I could have a drink with him at a pub and not feel like I was being preached at, or that it was some publicity stunt. You get the feeling you could take him out on a stag night and he'd not feel like the butt of the joke even when he was.
I don't vote (various reasons, but basically because I DO NOT KNOW these people, so how can I honestly put in a claim that they should be running a service/country? And I also can't vote for the people that I *DO* know who would probably do a good job, e.g. a prominent mathematician/economist for a finance minister, etc. because of the way the rules about who can run for election work - it's not a democracy, for example, if I can't vote for ME or Fred Bloggs down the road). But there's something about the way Boris works that makes him more appear approachable and normal than the others. Sure, he's a stereotype (bumbling Eton graduate who knows more about Latin than he does about the working man), but he's comfortable in that stereotype and even panders to it (I'm sure).
Boris is probably the only politician that I actually LIKE (that's very different to wanting him to be put into a position of power with my explicit approval on a ballot sheet). Hell, we all had the same reaction as Paul Merton when the self-styled buffoon managed to get into the mayoral office, but the fact is that enough people put him there because they liked him / trusted him more than the alternatives (and have kept that like / trust).
He's a fool. But he's a lovable fool. And he's different to other politicians. There's something "unofficial" about his demeanour in public. He's not all stuffy and using long words for the sake of it. He has fun, even at the Olympic ceremonies and things talking about "wiff-waff" and entertaining the crowds while getting stuck up on high-wires. You can easily imagine him as "the posh one" in a crowd of people, and he'd be great fun.
Of course it's only an image (which is my primary objection to voting for politicians I don't know). But it's an image different to the others, and one that works. It's like voting in Prince Harry or something. Probably not the most talented person to put into office, but one that you trust and has a public image that suggests he won't DELIBERATELY do things wrong.