Disclaimer: I'm not an expert at the Windows Installer technology, but this solution should be safer than mucking with registry entries and private files. Maybe you shouldn't try this at home, but it worked for me.
Windows Installer is close to ten years old now. It might have made a lot of sense when it was designed, but I'm not sure how vital it is today.
The big problem with MSI is it doesn't fail well. Any robust system needs to handle failure at any point in its operation. And this is where MSI falls short. Case in point: last week I was installing an MSI, and my motherboard chose to die at that point. The installer quietly stopped working. Other apps could keep working, but in strange ways. I couldn't issue new commands in a command shell, but I could link to new web pages in Firefox. It was as if the CreateProcess call wasn't working. In fact there were errors referring to kernel32.dll, if memory serves. I pulled the plug on the machine (the regular Shutdown program was one of the apps complaining about kernel32.dll), turned it on, and saw a black screen. The machine wouldn't even post -- this was no Windows problem.
It turns out there was a short on the motherboard, and replacing it fixed everything. Almost everything. The app I was trying to install was in limbo. I couldn't reinstall it, as I'd get the "Another version of this product is already installed" message. But the product wasn't installed -- the "c:\Program Files" directory hadn't been created yet.
Here's how I fixed this problem:
1. Get Orca. Since I no longer have the patience to install the latest round of the Windows Platform SDK, I got it from Aaron Stebner's WebLog. He conveniently has a copy of the orca.msi zip there. Download it, unzip it, install it, and run it.
2. In Orca, open the .msi file for the app Windows thinks is installed.
3. Click on the "Property" field in the "Tables" section.
4. Double-click on the Value field next to the "ProductCode" Property.
5. In a command-shell, run this command:
msiexec /x [Paste the ProductCode, with the braces]
6. Now install the original program, and hope your motherboard holds up.