I feel for you guys. Can you enlist the help of someone in ROTC that your sons respects? The relationship he has with his parents (right now at least) may not be conducive to helping him get back on track. But someone that he respects, that has the values you want him to adopt, may be able to get through.
Good luck.