I'm sorry you are going through this. I'd take everything out of his room that he did not need. He'd have a bed and a blanket and that would be it. Also what kind of clothes and shoes does he have? Name brand shoes? Not anymore. I'd have him bagging it all up and it would be going to the church drop off or goodwill or whatever.
I'd take him to the dollar store and buy him several generic pairs of jeans, serveral tshirts(ALL the same color) and maybe 2 pairs of very plain white tennis shoes. Have you ever seen guys in jail or prison? This is exactly what they wear. He would not have one name brand label on his body.
I would put him into a routine everymorning just like they did at jail. Up in the morning for excersizes before school and then school and then volunteering, homework and dinner afterwards and lights out at 8pm. He would have no tv(you might a bit easier on him about that) and would get solitary confinement in his room at night.
It's also a time for a dose of reality about what he does have. Obviously there are lots of shelters and people in need in Memphis. Time to take him down there and show him what how well he has it when he thinks he doesn't have anything or wants the instant gratification. I don't think he has anything wrong other than wanting it right now and honestly that's alot of people's problems in today's world.
I know there are cotton farms down that way. Cotton is the nastiest freaking job in the world. I'd find someone that needed some help. I'm about three and half hours away if you need some military drill routine instilled into him

I'm not a parent and don't know what you are going through but I can tell that you are hurting and you are a good parent. What he has done doesn't mean you failed.