J.S.
This sounds a lot like my middle daughter. Now, I'm NOT suggesting Autism since my daughter is autistic. What I'm suggesting is that he may have a food allergy, sensitivity, or intolerance. If he doesn't feel well, it would explain the clinginess, the crying all the time, and other difficult behaviors. He could be feeling pain in his gut and not know any other feeling, but not know how to express it either.
What I suggest is trying an elimination diet with him. What that means, if you're not familiar, is making a list of common allergens and trigger foods. Remove them one by one from his diet COMPLETELY for an entire month to see what happens. If his behavior improves, then you know that it's highly likely that you should not put that food/drink/ingredient back into his diet. However, you would have to test the theory and after four weeks give him the thing that you removed from his diet to see what happens. If he shows clear signs of behavior changes, mood changes, or digestive issues, then don't give it to him again and call the doctor to set him up with a gastroenterologist that will work with a nutritionist.
So first on your list would be to take him off of lactose for a full month but only lactose/dairy. The second month it would be another individual trigger food. It takes two weeks for dairy to leave the body completely, and then the body needs two weeks to learn to work without the dairy and what it's like to feel good. After that four weeks, you'd give a cup of milk and then within an hour you would see results. Then you could ask a pediatric gastroenterologist to do a breath test to confirm it officially and get it in his file for school purposes and future medication issues. For a month, avoid anything that has lactose, milk, cream, butterfat, milkfat, powdered milk, condensed milk, lactate, lactylate, anything that you think "might" be a milk derivative, no milk chocolate, no Boost, no cheese, no yogurt in case there's a milk protein allergy, no whey, casein or caseinate (milk protein).
If dairy isn't an issue after the elimination and testing, a gastroenterologist paired up with a pediatric nutritionist can walk you through with eliminating other suspects like wheat, gluten, soy, and other less commonly known trigger foods. We've been through this, but if it's food related it does get better.
I do highly suspect it's something in his diet since it's gone on for so long.