I guess your problem is that windows installer will sometimes fail to update a particular file based on its version. The reason is that the File Versioning Rules do not take the revision part into account. Also, Windows Installer will not consider the file modification date (except to block the updating of unversioned "user data").
I see three different possible solutions:
Change your assembly version scheme
Don't use the revision part of the assembly version number, or make sure that it is never the only part that changes for a release.
Use only major upgrades with removal of old product
A major upgrade can be configured in such a way that the old product is always uninstalled first (see this wix example). Files will therefore always be updated regardless of their version. (Possible exception: see the "Permanent" attribute for the component element).
Override the file version for Windows Installer
The msi file contains the version information for each file. Wix normally takes this version from the file, but you can set the DefaultVersion attribute in the File element and then suppress the information in the file itself with the -sf switch ("suppress files") of the light.exe linker.
This way you can use a separate versioning scheme for Windows Installer that doesn't use the revision part. This may not be a supported "feature": the Windows Installer File Table documentation explicitly states that the Version column should match the actual file version.