Blitzmax supports render to texture, batch rendering using vertex buffers and automatically rebinds texures when focus is lost.
Since BlitzMax is a language, I guess it could be said to support anything you can code for it. Max2d doesn't support any of that out of the box, only via some third party modules. It's never reliably rebound textures when focus is lost and regained for me. I've also never seen it shift particles in the thousands the way Noel was doing it yesterday with HGE, so I wouldn't say batch rendering was a strong point.
But as always, don't like it, don't use it. Interesting to see your standard "go troll elsewhere" reply doesn't apply to yourself.