This issue is more your problem than your son's. Your son's doctor is right. Your son will eat when he is hungry. Why are you giving your son snacks (junk food) when he isn't eating healthy food? This is why the obesity epidemic is out of control! You are not there to make your child feel good - you are there to parent your son, teaching him right from wrong.
It's fine that you feed him snacks, but only offer him healthy snacks. Fruit, cheese, yogurt. If he refuses don't give in, he will not starve. Kids will eat what you give them if they are hungry enough. Perhaps he is getting snacks too close to dinner time.
I give my son healthy food I try to give most of fruits cause that's what he likes more. And it is a problem for me became I don't want him to go with out eating.