I have the impression of having seen somewhere in the internet, that when one use e.g. ''vad'' or ''vem'' as relative pronoun, one should put a ''som'' right after it. So, according to what I read before, it should be: ''Hon vet vad som hon vill.''. Does that even make sense?
You can't start a relative clause with vem. We use som for that:
'The man who is sitting there is my dad' - Mannen som sitter där är min pappa
You also can't add vem in the latter sentence.
The reason Jag vet vem som har gjort det works is that in this sentence, vem is not a relative pronoun, i.e. it does not refer to something that has been said in the clause previously. In Mannen som sitter…, som points back to mannen, who was mentioned. But for vem in Jag vet vem…, there is nothing like that to point back to.