It can be hard, but don't let him fill up on juice. Filling up on milk would be better, but he shouldn't even do that. I can understand your frustration with your son not eating an actual meal, but some kids just aren't like that (which is okay, since our bodies need several small meals a day rather than 3 big meals). Try setting out different snacks throughout the day so he can snack as he does things. Try incorporating cheese, meats (hot dogs, bologna, chicken nuggets, sliced turkey, hard-boiled eggs), and grains (whole grain bread, popcorn) - sine you said he's doing well with fruits and veggies. As long as he's not filling up on juice, he should be fine. You may find that he's been drinking a lot of juice partially because it's something that he can have quickly when he notices he's hungry.
First.....calm down and try not to worry so much.I have a 3 year old son the same way,the exact same way and I have been in your shoes.With my experience I have discovered my son wants to drink instead of eat.First limit the juice and milk.Actually milk will fill him up more so than juice so dont give milk with or close to meals.Try giving him a "big boy" cup with only enough to get a good drink rather than a sippy full to the rim , if he takes one. In my experience I realized my son wasnt drinking because he was thirsty but because he liked his sippy .Try to limit snacking close to mealtime this way he will me more willing to eat. Always place something in front of him to eat throughout the day. Even if he says hes not hungry make him something and let it sit where he can get it.Sit down at a table and have meals together, do not allow him to get up until u have finished your meal, this will give him time to decide if he wants to eat as well as slow him down long enough to eat.My son dosent want to take the time to eat.I have also noticed for my son if he eats a good breakfast, he eats well throughout the day.Most importantly its not how much he eats but what he eats.Offer him a variety of healthy meals and snacks, not junk make what he does eat count.And last but not least if your that worried about it and just cannot get him to eat give him pediasure drinks they are delicious and full of nutrition. GOOD LUCK!! and do keep up the vitamins