Oamaru, Dunedin, Te Anau
I was recently in all of these places and have a few ideas.
Oamaru is small and doesn't have a lot but 30 minutes away is Moeraki (even smaller) where you will find Fleur's Place. This is pretty much a must visit restaurant with some great cooking built around fantastic local product.
I was only in Dunedin for a night so my experience is limited but if you want a nice pub to spend a few hours in the evening Albar near the Octagon was great with good beer and decent small plates available.
Te Anau is awful for food. It's basically a stopping off point for Milford Sound and I think you are better off spending more time in Queenstown and doing a day trip (by coach) to Milford Sound rather than spending time in Te Anau.