I sympathise with you over your prblems - the first year or so is always tricky and MIL's more so!!! Mine undermines every type of discipline I use as she is so wishy washy and never tells them off, but then cannot cope with sharing her attention so ds always misses out
My main advice would be to stop the night time milk - at 18 months he is pefectly capable of sleeping through and it is quite probable that him having milk at night is affecting his daytime appetite - it certainly was with my son went he went through a phase of waking up 'hungry' at night. If he will not go cold turkey, water down the milk gradually each night until it is almost water and soon he will stop waking for it. This will also help your relationship with dp as you can move back into your bedroom.
Also, as others have said, make mealtimes specific - food to be eaten at the table at set times, with healthy snacks in between. My friend had a baby who was put through all sorts of test from 6 mths becasue she ate very little and was very small and low on the centiles (0.4%) and they had similar issues with feeding her. I well remember her refusing to eat unless she watched the TV, and her mother giving in becasue she 'had to eat'. Lo and behold at 6 she suddenly shot up and is now very tall and very well.
It also made me determined that I would not let food become a battle ground for my dd, who is a year younger and coincidentally exactly the same build / size, and she has always eaten well, if not that much. Interestingly her body seems to know what she needs as she eats lots of protein, vegetables and fruit and very little carbohydrate - she will never eat ptotato as a 'vegetable' but does love jacket potatoes as a main meal!
We found that having family meal times where we modelled good eatng and manners worked wonders, even from age 1 in a booster seat. Lots of children are far too interested in playing to want to eat - it happens lots at school when they first start, but he will soon get the message that mealtimes are for eating.
Hope you can sit down with your dh and sort things out - your ds needs you both