I had the same prob, it is horrible and you do feel like you're going insane. My DD was taking money out of my purse, my other DDs room, and out of my bank account but would always vehemently deny it.
They rarely admit to it. I think they deny it to themselves that it's happening.
The only thing you can do is not leave things around that they can take. They won't resist temptation if it's there. No loose change, purses, wallets, cash cards. Food and drink is more difficult to regulate but, again, if it's there they will take it. It's not done maliciously in most cases but more a self-obsessed, blinkered, I-want-it-so-I'll-take-it teenage thing.
It is horrible to feel as if you're going mad. I've been through it with DD (16). She's stopped taking money (I'm pretty sure anyway)but only after endless rows and the final straw was that I broke down in tears which shocked her (she said the shouting was just noise and easy to tune out) but she still pilfers annoying things like my make-up and stuff. I wish I knew how to handle it better myself.
I know it sounds mad when you suspect them of taking money but does he get pocket money? Maybe he wants the money for stuff he can't ask you for (I won't speculate what that might be though!)
It's so difficult to find out what's going on with them and hard to question them in a way that won't make them clam up or get defensive.
(Just caught up with thread replies - FWIW it might be an idea to have a word with the police and see if they will have a chat with DC. I know it sounds heavy handed but it could bring home the seriousness of what's going on or where it might lead. Nip it in the bud is best if you can)