I know this thread is dated, but I do feel compelled to reply.
First, I know it's not a consolation but it hurts to read this. For both you and your child - not helpful, but I know in some moments you don't need words to make things better, sometimes you just need someone to cry with you.
I know it will be hard for me to offer realistic advice because I don't have children, but I know that children often act out when they don't have the cognitive ability to....maybe understand or control the emotions or thoughts in their heads. He doesn't know how to say "I'm hurting" and is instead acting out to express this type of emotion. Maybe he's been hurting long enough that this is his only way of coping, and this has been his only outlet that has served to alleviate the anguish in his head. The other attempts he made, maybe they didn't work. Addictions and risky behavior....they do.
I read that you have him seeing a therapist and have him on medication - have you considered trying a new therapist? Maybe one that specializes in treating adolescents, or one that specializes in the behavior he's engaging in now.
However, I'm going to throw in a personal story of my own. I know it's not the same situation, but I hope the outcome gives you a little hope.
My brother is six years older than me. In his early 20s, he went to a large city to go to college. He was a party boy, drank and did drugs excessively, was promiscuous, and landed in a lot of trouble. This went on for several years - he destroyed his credit and racked up debt, was arrested several times, and I suspect he got involved in dealing drugs. He constantly called my mom to bail him out or loan him money, and finally, she couldn't do it anymore. His behaviors were hurting her so desperately - and my mom told me she had to make the decision to either keep bailing him out, or let him suffer the consequences.
She finally let him suffer the consequences. The hurt and look on her face when she told me this - it was the hardest decision she ever had to make. She had been trying to help him the best she could - offering him constant love, money when he needed it, a lawyer to get him out of jail, and a shoulder to cry on. The last time he got arrested, she didn't bail him out. It was hard for him - this action made him finally realize that he had to get himself out of the situation. He moved home again and started from scratch.
It took her letting him go to learn what his life had become. Mom had to step back and let him fall - she never abandoned him, but she let him suffer the consequences and that's what it took for him to get his act together. She took him back home and helped him rebuild his life. Now the boy....well let's just say he's better off than my mother and me, combined, jeez.
Why did I throw that story in? Well, it's an example of how people can indeed turn their lives around - but also, sometimes the best thing we can do for someone is love them unconditionally, provide them security and give them a shoulder to cry on, but let come to you on their own terms. It sounds to me like you've given him the common sense to realize that what he's doing is wrong (he's openly bragging to you about his drug use - if he didn't realize it was wrong, he wouldn't care enough to say it). You're doing everything you can and it's now up to him.
You can also be the example - getting help for yourself. Making it known to him that you're actively trying to help yourself. Let him know it's okay to need help sometimes.
Most importantly, always let him know he's loved. That you will be there for him, regardless of what he's done, and you will do anything in your power to ensure he can get his life back on track when he's ready.
“Oh, believe, you were not born for nothing! You have not lived, or suffered, for nothing! What was created must perish, and what perished must rise again! Stop trembling! Prepare yourself to live!”
-Mahler, 2nd symphony