Keep in mind, it's a 19th level character with a class specialized in evading detection. Essentially, you've got a class that has a limited form of improved invisiblity all the time but has certain vulnerabilities (for example bright light).
Other than the fact that there should have been no sneak attack (because of mutual concealment) and a 20% miss chance (because of mutual concealment), I've not got alot of problems with what you just described. It is afterall a 19th level character. If you don't want to have this sort of stuff going on, don't play D20 up to levels approaching 20 (or higher). At these levels you are almost always going to have situations were one character is absolutely disadvantaged against the other because the random factor disappears under the size of a character's bonuses.
I'm assuming that the rogue has a relatively high sleight of hand skill as well. If he failed the sleight of hand check, the target would know that the object just went missing, even if he couldn't see what took it.
I'm further assuming that the rogue made a successful touch attack (with a 20% miss chance) to grab the object in combat.
BTW, you are looking at a prime case of why I don't allow prestige classes in a game. And what you've described is a relatively un-munchkin build that doesn't bother me all that much compared to alot of examples I've seen. I'd just make sure the party faced things with blind-sight, that had true seeing, high spot checks, or the ability to dispel shadows, or was at good at hiding as the shadowdancer was, etc. Think about the party running into a powerful Radiance quasi-elemental, for example. Or perhaps a group of Lantern Archons are tasked with gaurding a particular tomb that the PC's have to get into (which leads to an interesting RP oppurtunity, and possiblely some interesting good on good collateral damage). Perhaps the party has to face a Shadow Dragon or a other shadow stuff creature, and everyone in the party but the Shadowdancer is highly disadvantaged unless they use a really bright light to take away the monster's advantages.
At high levels in 1st edition, you generally had to craft 'nemesis' opponents that match power for power the abilities of characters. By 19th level, you've got a character that is a 'super'. Face the character with 'super-villians'. Think about some of your favorite supers and the sort of foes that they have to face. If you are really troubled by this, have the Shadowdancer run afoul of an organization or villian that either is Shadowdancers or else hates Shadowdancers. Use them as a reoccuring villian.
Don't of course do this all the time. The object is not to nerf the Shadowdancer. The object is to occassionally challenge the Shadowdancer. If you had a 4 player party, I'd only throw anti-shadowdancer tech at the party one in six encounters or so. Every once in a while I'd have an extended dungeon that really made life on the Shadowdancer hard ('The Dungeon of Scincillating Mirrors'). But to be fair, I'd do this to everyone in the party. The fighter would occassionally have to face monsters with ranged attacks and terrain advantages. The spellcasters occassionally have to fight in anti-magic fields, and so forth.