Hi Becky,
R did this a while back. Giving her a hot lunch doesn't really work for us, she won't wat as much at lunchtime and I'm not always there because of work.
I found when I stopped giving her a snack after she napped she was more than ready for her dinner. I get with H needing a snack that's a toughie. There are times when R wants a snack so I'll give her something like a few grapes, a few raisins etc and explain that's all she can have as it's nearly dinner time. She wasn't happy about it at first but soon got used to it.
As for Dinner time, if R said she didn't want it or wanted something else, the. I told her that was fine but there was nothing else / pudding etc and got her down from the table. Nine times out of ten she'd come back and ask for something else - I'd tell her she needed to eat her dinner before she could have something else. She would come back and eat her dinner. At first as long as she'd made a decent attempt (ie not just a token couple of mouthfuls!) I'd let her have something else and she soon cottoned on. Even now on the odd day when she decides to have a funny - I don't want that I want pasta for example, I will tell her that's what there is, I'll make her pasta tommorow but if she doesn't eat her dinner that's fine but there'll be nothing else.
It worked for us, and continues to do so.
Hth x