I poked around an a couple of photography forums I belong to, the general answer for pictures that look like yours and where the globes appear to be in different locations, seems to be:
The basic causes are the flash is too near the lens and the lens focal length is too short. This means that particles in front of the lense is 'in focus' and that light from the flash catches this dust and bounces straight back into the lens.
The only real solutions therefore are SLR type camera's and external flash units. (and this goes for red-eye problems as well)
So, what can you do if you have a powershot or similar camera? well, you can minimise the problem by using a bit of zoom and keeping the aperture as wide as possible. The idea being to get whatever it is that is catching the flash near the camera out of focus. try aperture priority and set the aperture to 2.8
Don't forget to keep the lense as clean as possible. I use an air brush.
And from the Cannon Powershot manual:
"Cause: Light from the flash has reflected off dust particles or
insects in the air. This occurs more frequently in the following
conditions:
- When shooting at the wide angle end.
- When shooting with a high aperture value in the aperture-priority mode.
.