This is a common know issue that Apple has not acknowledged. Google: "Macbook Pro 2009 EFI firmware update 1.7."
Downgrade the motherboard firmware back to EFI 1.6. (you may not be able to upgrade to Mountain Lion however.
See the discussion here:
The following has someone else's instructions but I updated link to a non-broken one for the firmware file.
The following is my take on the Russian instructions, which I tested and confirmed they worked.
- Download the linked .dmg file.
- Do not mount file
- Plug in a usb drive any size
- REformat this USB drive in Mac OSX HFS+ Journaled in disk utility.
- Click on the newly formatted drive Volume, then click on the tab restore (same row as erase).
- In this panel you will see two white input boxes, in source you will browse and select the .dmg downloaded in step 1, you can either brose it or drag and drop it in the source bow.
- In the Destination box, drag and drop the newly formatted Volume from step 4/5.
- no need to have the erase destination box checked/ticked.
- Hit the restore button.
- Once this is done, unplug and replug the usb drive, shut down the machine
- Boot up the machine while its booting up, before the apple icon pops up, press and hold the option button until your drives/partitions pop up.
In my case I had three pop up, my Bootcamp partition my main Mac harddrive, and the BOOTABLE USB drive I just made. Select the bootable USB drive (yellow orangish color), Use Arrows to navigate and Enter button to select.
Once this is selected the Apple logo will come up and a dark gray bar will start to move right under it. Sit, relax, and wait for the process to be done.
END: you have now downgraded to EFI firmware 1.6
If you get this error:
Could not find any scan information. The source image needs to be imagescanned before it can be restored."
Click on the image file in the list on the left and then click on Image in the menu and then on Scan Image for Restore. After that, everything should go smoothly.
Thanks to SmAcDuff for pointing out the solution to the Image scan error.