Not sure what's causing it but, more than likely he's overeating out of habit. Try limiting how much you cook overall for everyone. Then let everyone finish their food. That way, he can't get what's not there (basically everyone having adequate servings). If he wants more food, then give him two choices of veggies, yogurt, etc.