I totally agree about many with the traffic and noise, so heres a few that do not suffer in that regard.
At one end of the promenade , area castagnolia , there is a 4 star hotel,
Lido Seegarten , this has a wonderful open air terrace as part of the restaurant, directly to the lake edge, the quality of cooking is top notch,
plus most importantly for you it has i suspect exactly the right selection of meat and pasta dishes that suit.not cheap but not outrageous.
Near the other end of the promenade the Eden Hotel has similar.
Another option, and perhaps more appropriate for anniversary, take ferry boat from lake front to morcote, walk 150-200 metres, ristorante de la poste,
It has a cvered dining area that is built on stilts in the lake , very weather proof, in case it is not such good weather on the evening, good pasta, made in the kitchen, pizza cooked in their ancient woodfired oven, plus all thte usual salads, steaks etc...Family owned and run, really friendly professional waiting staff, beautiful setting, plus the bonus of going there and back on the lake by ferry boat.
good wine lists in all three suggestions.