I personally think for you the
Hotel des Balances should fit the bill. It is by many regarded as one of the best hotels in Lucerne. I have only had lunch there but the location is amazing, right on the lake with fantastic views! It can be quite expensive but for anyone's first time in Luzern I would highly recommend it. At the least be sure to have lunch here at the lakeside, its amazing!
I would also recommend the Hotel Schweizerhof Luzern. I have not personally stayed there but have been in it and it looks very nice.
If you are looking for old time luxury the Grand Hotel National Luzern might be could be a option, it is a 10 minute walk form the old town but is right on the lake with great views. The rooms are amazing, but you'd miss out a bit on the atmosphere of the old city center.
The Renaissance Lucerne just opened in 2011, it is also not in the old town but quite close, plus you would be able to collect points.
When I'm in Luzern and am on a bit of a budget (if there is something like budget in Switzerland) I try to get a good deal at the Ameron Hotel Flora (formally Best Western Flora) they renovated it a few years ago and it is quite a decent hotel.
The NH hotel in Old Town Luzern is also OK. but would not recommend it for any stay longer than two nights.
Be sure not to choose for the Hotel Ambassador or de La Paix, these are really appaling!
if you want to try typical Swiss food, go to this place:
http://www.upgrade.ch/location.cfm?LocID=8&artLocID=3
Mainly locals go there and its a great place to eat Swiss food, try the rösti!
For a drink in the evening, the "Hotel Mr. Pickwick" pub is highly recommended, especially on a football evening!