That's an opinion of Joel I don't really share, for much the reasons you mentioned, so I didn't actually refer to the .msi file.
The Windows Installer uses .msi files as the source for an installation. The Eraser installation file (which is a normal .exe file) basically contains two .msi files (one for 32 and one for 64 bit systems) and the code to work out which one your system needs, unpack it and send it to the Windows Installer. Compression and packaging programs like 7Zip can unpack the .msi files from the executable (just as if it were a zip or 7z file), and the user can then run them separately (just by double-clicking on them).
This is a perfectly straightforward procedure, but it is outside many users' sphere of knowledge (people need to have 7Zip or whatever installed, know how to use it, and know which .msi file they need) and also outside their comfort zone. I prefer to suggest that the .exe file is run instead. The .msi file that is then unpacked includes the uninstaller, and, even if the installation doesn't work, a subsequent uninstall and reinstall should fix things. At the end of the day, as you discovered, it should amount to the same thing.