I'm sure that extraction to temp would be quite a problem with Steam, et al, but Ocra only does that so that it can make a nice clean exe. I can't see any particular reason why you couldn't run an Ocra exe and find the temp folder it creates (which will have everything you need to run it on a Windows PC, without being too bloated with stuff you don't need) and distribute that instead, since Steam would deal with managing all the separate files sensibly. I'm sure we could hack Ocra to do this for us anyway (or bug the Ocra people to do similar).
I did look into using http://spoon.net
to distribute a game of this type through a browser and, since that uses a sandbox on the user's machine, there'd be no issue with extracting to a temp folder. I never followed it up, though, since they wanted usable products rather than dodgy beta stuff (most importantly, they lagged updates by about 2 weeks, I think, so they wouldn't be appropriate for rapid development cycles). Also, since noone would want to install a rather obscure client just to play your game, I am not sure this is a significantly better method than downloading exes.