Wallet consistency check on startup would catch this every time. The only this attack vector would work on Armory is if the entire wallet is swapped (you'd notice), or the data is changed in RAM. In both cases, you got yourself in a position you shouldn't be to begin with.
You can add comments to addresses in the Receive dialog.
Generally the best way around this is to create a large key pool on your offline machine, grab the WO and import that to your online machine. This way you don't trust the online machine to compute public keys for you, all the while keeping track of the latest requested address (incrementing a counter).