I am running over Photoshop-IPTC problems quite often. Especially PS7 seems to live in a world of its own that is not connected to the IPTC reality I live in.
As for TIFFs I helped myself by handling IPTC in them on my own, not using IM's IPTC functions. There are applications on the market that even write wrong IPTC chunks in TIFFs completely, so I use the TIFF directory, grab the IPTC blob and handle it myself.
It seems that when dealing with TIFFs the best way is to strip all profiles (including IPTC) and recreate them manually - this way PS does not moan.
I have to add that I am using IM core, not the shell tools, so I don't know how to solve the TIFF/IPTC problems on shell base.