Your DH had the wrong attitude.
Child is offered soup and a sandwich. Child has 10 minutes to eat what they want. Remove what they haven't eaten. Between now and tea time they can have a piece of fruit.
I'm wondering what the three year old may have eaten since breakfast.
We never had nonsense/battles at mealtimes because they were matter of fact interludes.
Breakfast: toast, eggs/yoghurt/fruit
10.30 ish: fruit or cheese cubes
Lunch: usually a quick meal: ham, chicken, cheese, cherry toms, cu, Carrots, fruit, etc
3.30 ish: a biscuit, perhaps two crackers or breadstick or fruit
Tea: cottage pie, fish pie, salmon, chicken, spag bol, etc with veggies or salad, fruit or ice cream or jelly or Yoghurt, etc.
Before bed: milk and a biscuit
They don't need huge portions - a teaplate works.
No more than 10 minutes at the table but if they don't eat then it's fruit between meals and definitely no: crisps, chocolate, sweets, ice-cream, etc.