Try and get a Logis book or look at logishotels.com they list hundreds of hotels all over France. Mostly 2 or 3 star. All the hotels are privately owned. Stayed in a couple a few weeks ago and both were good.
St Malo can be expensive if you stay within in the walls. We stayed in Hotel Du Louvre in June for 80Euros. Not bad but very central. It gets a bit cheaper if you stay outside of the walls.
St Servan is walking distance and has a couple of good hotels. Manoir Du Cunningham has some expensive suites and some cheaper rooms. There are a couple of very good reasonably priced restaurants on the Solidor beach side. Make reservations earlier in the day though.
If you eat within the walls look for a busy restaurant and go there. Most of fixed price menu's and Sea food is a speciality.
Whatever you do though. When in St Malo do NOT leave anything in your car.
I love St Malo.
One more thing to add. We didn't prebook anything when we were there a couple of weeks ago, and found it quite hard to find hotels with vacancies, and there were quite a few that although still have signs by the side of the road, had closed down.