I don't think anything currently exists that supplies what you're asking about.
A short mind storm about what would be needed to do this:
We need to decide how to generate the short description. Is it "A/The thief", "A dwarf" or "A dwarven thief"? Or even a self-designed description? If so, we'd need to save that, and make a meny option to set it, and make sure it's set on first login. So changes to the login process, character creation and save/load functions.
Next, we need to store the names somewhere. A new struct in the char_data, mapping id to name. And store and load it. So, changes to char_data and save/load functions + the new remember command.
We'll probably also want to have a away of checking who you currently remember, and be able to check this on stat. So, a new command + adding to do_stat_character.
Everywhere we currently display a name, we'd need to check if this is a PC and if the viewer had the PC remembered. Otherwise, show the description above.
Everywhere we look up based on name, we need to check the players remembered list.
That's about it.
So, not so much work, really. Is it worth it to you? Will this achieve what you want?