"The blood of the innocent shall suffice to condemn thy soul. Thou vile and debased." - from a lost passage of ancient scripture that I once read right before it was consumed by flames
Simple solution, if you cannot take down a thief yourself and you're going to be doing something which requires you to keep valuables on you, hire a bodyguard. Or recall away and do your business elsewhere... Though I will say, that the ability for thieves to be successful now is way too high. I have not seen a g'whacked thief in a long time, even when stealing heavy items with lots of npcs around. Nor have I seen many thieves stay blue when stealing, even light items away from anyone. Seems like the only two states for a thief is globally grey, or grey to target.
I believe you can also call the guards if your character notices them. Basically when a thief steals now, they will always go grey. Whether the guards can be called or not depends on if they failed or succeeded to do it unnoticed. Thieves only stay blue after thieving if they are stealing from criminals or other thieves now.
I've "noticed" (system message) a thief stealing from me several times, immediately called guards, and nothing. So if that's the case that the guards should come, then the mechanic is currently in need of a review.
NOTE THAT I WOULD NEVER PARTAKE IN SUCH NEFARIOUS ACTS, but from the thief's perspective you get the message 'Guards may now be called on you' on occasion. When you get that message, there is a 20 second window (or thereabouts) where guards can be called on you. Afterwards you get, 'Guards can no longer be called on you.' I guess I thought that linked up the detection message.