This is very very annoying, I have been in a similar situation myself. The first rule of developing installers is to only test them in a virtual machine that you can roll back to a known state, but that is too late now.
There are 2 approaches, try the easy one first. Find your uninstaller MSI that is cached in %windir%\installer\
. It will have been renamed so figure out which one it is by timestamp. Note the name of the file. Build a new installer without the requirements that is blocking the un-installation and rewrite the filename that you noted down earlier. Now try uninstalling it. If that works, you're done.
If that didn't work, you will need to do some hacking of the MSI to allow it to cleanly uninstall. You will need to install the Orca tool which allows you to view the raw tables composing your MSI. This is very useful for MSI development so you might want to install it anyway. It will give you a much better understanding of the MSI toolchain. It is included in the windows platform kit. If you are using Visual Studio, you can find the installer somewhere similar to C:\Program Files (x86)\Windows Kits\8.0\bin\x86
.
Once you have Orca installed, you will need to find your installer in %windir%\installer\
just like in method 1. Open that MSI in Orca and find the offending action in the correct table and modify it appropriately. You are slightly on your own here, but leave a comment if you can't pin it down. Then save the MSI and see if that works.
I was able to use this to uninstall some pretty mangled installers that I created before I learned to use VMs.