> Ajax in general breaks REST
Huh? You are supposed to correctly choose the HTTP verbs and URI path precisely so that HTTP semantics apply.
If you are talking about page state then there are numerous ways of dealing with that - one example is http://diveintohtml5.info/history.html
If your assertion is that developers can write bad code, abuse HTTP semantics, defeat caches, break navigation etc then so what? With the ability to do things right comes the ability to mess them up.