I can now confirm that typing "killall nautilus" will fix all application windows until a nautilus instance is loaded (eg opening the home folder). This will cause all other windows to become invisible again. However, retyping killall nautilus will fix again.
Obviously this is only a debugging workaround as the user cannot still use nautilus. It seems, therefore, that this is related to Compiz's interactions with Nautilus under Unity (3D).
More info (I typed too soon before)
I can now confirm that typing "killall nautilus" will fix all application windows until a nautilus instance is loaded (eg opening the home folder). This will cause all other windows to become invisible again. However, retyping killall nautilus will fix again.
Obviously this is only a debugging workaround as the user cannot still use nautilus. It seems, therefore, that this is related to Compiz's interactions with Nautilus under Unity (3D).