I'm going to give you some advice here, as someone who went through a similar situation but I bought a house with him and even got engaged to him... and he was fucking around the entire time and persuaded me I was mentally unwell which I believed and had counselling and medication as a result of it.
When you wake up to what's going on like you have, you need to do the hard thing. It doesn't feel good, but in time, you will thank yourself and be proud of yourself.
The hard thing is to change the access codes on your life. To resist the urge to bite back, respond, argue, engage or defend yourself.
Whilst the snappy responses are great, it hurts people like this far more if you simply give them the ultimate insult: Complete indifference. No response. As though their existence is of no importance to you at all.
It's not satisfying in any sense of the word at first, it actually feels extremely unsatisfying, you almost yearn for the argument, the showdown and to get the aggression out, the anger, the injustice and the hurt. Resist.
All you do by giving any response is feed their ego. You show you are bothered purely by your response.
A bit of time will go by and you'll feel awful and angry and have plenty to say, tell yourself, write it down, text yourself, record yourself - just do whatever you can to get the anger out. Send letters meant for them to yourself. After a while this person will start to suffer, you won't see it though, because you'll have changed the access code to your life. They won't be able to get to you, but rest assured it will drive them mad. It will anger them.
In this time, you need to focus on yourself and constantly re-direct your attention back to yourself. Join the gym, get in shape, find new things to do with your life, find a purpose - it's really hard at first but persevere with yourself. Do therapy if you want to, i always recommend it.
Do not feed the narcs is what I have to say, they will always enjoy attention, good or bad. But indifference? They can't stand that.