<human>: Could you distill the essence of the text into 1-3 sentences?

Hey everyone. So a friend of mine (let's call him John) was in about a 3 year relationship that had a lot of ups and downs but was relatively fine. When they broke up, the girl (call her Jessica) went crazy and stole money, booze, food, sheets, his iPad, etc. from him and left for a year and came back a week ago. She seemed relatively normal to him, and John always has his door open for anyone that needs help, so he let her back into his life. 

They mutually agreed to be friends from then on, but she has always been really possessive of him causing him to not be able to go on dates, hang out with people, etc. A few days ago, Jessica left her email open on his computer, and he sifted through some and found that she had been sending pornographic stuff to people she meets through craigslist and finds that she is homeless and a prostitute. He confronted her about it, and she went nuts. Screaming, throwing things and stuff. He really cares about her even though she is abusive and he feels bad for her because he thinks her bad upbringing had a huge role in this.
<bot>: Anyway, he can't live his life because of her but he doesn't want to get rid of her because he cares about her deeply despite everything she has done to him. What should he do?