If you have a car, the best place I know is the Ferme de Merlinge:
http://www.fermedemerlinge.ch/brunch.html
You need to book a place, and it is not cheap, but there is excellent food, as much as you can eat, and most of the food is made from their own produce.
In summer there are tables outside in the gardens, in the winter it is in a nice warm room with a roaring fire :-)