There was a
paper in SIGGRAPH '06 on this exact topic. You can get their MatLab code and may well be able to deblur your picture.
EDIT: one of the authors of that paper gave a talk here and asked members of the audience to submit blurry pictures in advance for them to crunch on (this stuff takes hours to run, so they can't do it as a real-time demo). One of the things they *can't* deal with that might be a problem with your picture is whenever you max out a color channel. Once you get a pure white pixel, they don't know whether it's just kinda white or whether it was much, much brighter, which makes it hard to know what to do with the energy captured in those pixels. Looks like you may have some problems along those lines. Most likely, what you'd do is use their fancy deblur thing as a starting point, and then use Photoshop to clean up the output.