Dear clucks - I can really empathise - about the eating bit at least, but not about your families comments.
(I haven't read any of the advice given, as I'm in a hurry, so I'll apologise to ALL if I repeat /disregard other advice!)
A child not eating can make you feel so desperate & stressed out & guilty, and frankly I was very upset to read your fa,ily adding to your guilt. I stay at home full time & don't leave mine for a second, (I only dream of it!) so your mil or whoever can hypothsise to her hearts content about the reasons, but it's not actually helping, in fact, she's making the situation worse, because ime, parental stress about a child's lack of eating just perpetuates the situation.
My ds basically went on hunger strike for a LONG time - it started at about 16 months, and went on for a whole year. I felt guilty - me moved, we had another child, was it all my fault etc etc. To cap it all he was constantly ill - nothing major, just one cold after another, anaemia. I was at the doctors & HV's several times. I was really unhappy with their response, but everyone said the sa,e thing.
"It is not your job to worry about what your son eats. It is your job to provide only good nutritious food, then what he eats is his business" Frankly I was really p*d off by this, but looking back, he was right. Ds by the way would only eat plain yoghurt, dry bread & rice cakes. He wpould go a whole day on only one rice cake. I was totally beside myself. I would be sad, angry frustrated. Eventually it went on so long I even stopped cooking his food because It would make me too angry to just throw it all away, I'd just give him an apple or something.
Gradually, without us really noticing he started to eat again and now, without any effort on our part (once we'd finally given up stressing about it) he eats fine & we even allow him to eat rubbish again to.
He will grow out of it, he won't starve. Just try not to get stressed, don't let him eat rubbish, and try & find a way of getting your family to stop being so unbelievably unhelful.