I think you need to read Reality Therapy by Dr. William Glasser. It is on Kindle or in paperback for under $10 and would help a TON. My stepmother in law used to work with Dr. Glasser. She traveled the world using this method to set up programs in prisons. They would go and train a group of maximum security inmates with this method. They would first help the inmates, then train the inmates to go and use the method to help other inmates, to pass what they learned along. This is used successfully in prisons all over the world and is proven to help people like your son learn that it is their choices that shape their lives, not what others do to them.
I am likely not explaining the therapy well, although I am explaining what stepmil did well. But the book IS used to help people with problems like your son, who blame everyone else for their problems when in reality it is all their own choices that cause their problems.
Things we learned from the book really helped us with our son, and helped him learn that his choices impacted his reality in a major way. That it was his choices that were causing his problems, NOT the problems that were being inflicted on him from outside sources.