I was that child. Except my diet was probably even more limited. My own daughter is pretty bad now and my Dad always reminds me of what a healthy, energetic child I was.
My parents got into battles of wills with me over food and I'm really trying to never, ever do that with DD, because it was totally counter productive. It's not a battle the parent can win - if a child doesn't want to eat something, they won't eat it. The only think I think might have worked was not making a big deal of food and mealtimes at all and letting me come to things in my own time. Once it was officially A Big Deal it kind of took on its own logic.
It was a complete mental block. Some of the weird issues are still there, e.g. I will happily eat carrots cut lengthwise now, but still can't touch them cut into rounds It sounds (and is, I suppose) mental, but carrots but into rounds I remember as a battleground.
You say he is hungry - can you give him more of the good stuff (bread, yoghurt, milk, cereal)? My DD get hungry and cranky too sometimes but I just let her snack if she's hungry and try to stick to healthier types of snack.
Sorry, I feel your pain and your DS's
Also, good that he likes milk. I think that was what kept me healthy as a child - I really had an iron constitution and was never ill, tons of energy, and like a whippet. DD so far is the same.