I've just skimmed the Inno docs, but it seems that you can work around these issues by providing a custom little EXE which does all the tricks you want (according to the docs you just have to place it into the [Run] section).
You might even be able to place a call to vcredist.exe into that section (I just don't know how to stop the .exe from giving me the reboot box).
[vcrdist.exe]] is not a recommended redistribution method for the preceding files. This package does not communicate error messages back to the program or user that is starting Vcredist.exe. Therefore, Microsoft highly recommends that programs starting Vcredist.exe first check for available disk space (approximately 10 MB), read-only system files, administrator privileges, and a valid TEMP directory. The absence of any of these prerequisites can cause this package to incorrectly install some of the files onto the target system.
IOW, it doesn't solve the problem, although it may be a step on the way. Would also add another ~2Mb to the download -- it ships stuff Python has no use for (especiall the large MFC DLLs).