I agree he's carrying some baggage from the past and he's going to need a lot of therapy. There is still parts of his brain still developing .
I'm not sure how old you are, I'm just giving this example; I'm 38, and there are things I did and thought in my late teens that as a 38 year old woman I don't think anymore. I can also see changes in my own life from my teens to my 20's to my 30's. I think my 30's have been really been amazing to look back on my life and some of my decisions I made and say "why did I do that"; no way, would I have made that same decision today...
My point is, it would be great to have a quick fix and he would just change, but I think you need to be rational, and I'm not saying you aren't, but look at how far he has already came. Continue to give his support and trust in you, this isn't a quick fix. I can't explain why some people have an easy life and others have to work so hard just for the little things in life. Just continue the therapy and love...
I know this has to be very HARD on you and him.
Hugs going out!!!