I have a 17mo boy that is only 18lbs and hasn‘t grown since 8 months old. He has a growth hormone problem and is under 5% for his weight at his age, have they checked that? It's just a simple blood test, that, low iron, or having celiac disease can contribute to him being small. Celiac disease can be fixed with diet.
Anyhow, for the 4yr old, I was suggested to give more meat and pasta to pack on the right pounds and 1 can of Pediasure a day. For the 2yr old, it's all about portion control and the right fats/carbs, unless he has a disorder i.e. thyroid. Then of course, medication would help. Except for sweets, they should be able to eat the same foods, just different amounts. More veg will never hurt to fill you up.
I’m not sure what tests, if any, you’ve had on your boys. Or if anything has been determined about either for their weight issues… I’m just trying all avenues.
HTH.
~B.