Did they test him for mange again?
When you switched him to grain free did you also cut out every other food source? Like treats or other things he eats? Sometimes we forget to cut out grain treats or monitor other things they could be allergic too. It does take several weeks for grains to get completely out of their system. The other thing is possibly an allergy to something he came into contact with. Did you change detergents or any other change that happened around the time this started?
If he was my dog this is where I would start. Give him a bath is dawn dish soap to wash off any contaminates he may have come into contact with. Then wash his bedding in dreft or something similar. Dreft is a detergent for babies that is designed for sensitive skin. I would probably wash his blankets a few times. Then I would Order some Nutsock Nu-Stock - Topical Skin Treatment for Animals.
This will help with his hair and help his skin, it's sulfur based and works wonders on many levels. It stinks to high haven so I would put it on at night and have him sleep in his crate.
Answer the questions above and maybe we can trouble shoot it.