Engelberg if you want to visit Titlis; Spiez if you want to be on the lake. But I will suggest another option: Rigi Kaltbad up on Rigi, near Luzern. This would work best if you have a day left on your Swiss Pass as getting there involves a boat plus train or cablecar ride from Luzern. But it is a lovely spot up on the mountain, with views over the lake. We have stayed there at Hotel Alpina,but next time it will be Rigi Kaltbad Swiss Quality Hotel with its beautiful spa and outdoor pool.
https://www.alpina-rigi.ch/
They are showing “hot deal” rates of 180-190 CHF for a double room with view in June, including spa/pool access and breakfast.. That is probably a non-refundable rate. I cannot find prices for Hotel Alpina; it is a small family-run place and they may not be booking for next summer yet. It was very reasonable when we stayed there but it was 10 years ago.
For your last night, I suggest Luzern over Zurich, unless your flight is super-early. What is your budget and what hotels did you already check? I Am seeing prices in the range of 220-250 CHF for Ameron Hotel Flora, Hotel des Alpes, and Waldstaettersee, all very nice hotels. I don’t know that you would find anything cheaper in Zurich but I didn’t actually look.