Differences in browser implementation (so we have some boilerplate to figure out what we actually need to do to make an XMLHTTPRequest) - which is getting better, and really isn't that much of a pain, and the nature of the web itself, or rather the nature of HTTP - namely that it's stateless, and we're doing more and more that relies on hacks around the stateless nature of HTTP.
Getting around that second one pretty much requires an entirely new protocol, unless you're the type that doesn't think that the web should be used for more interactive things, in which case the only thing I can say is "too bad, it is and there's nothing you can do to stop it".
Apologies if I've tangented in the wrong directions. Maybe you would like to present some reasons as to why you think AJAX is convoluted, cumbersome, and an embarrassment?