Book an apartment or chalet
Most rentals are cheaper than hotels. You either go out for dinner, or cook your own meals. The large COOP supermarket between the town center and St. Moritz-Bad makes shopping and cooking part of the fun. There are plenty of restaurants in St. Moritz as well.
Interhome offers thousands of holiday homes and apartments across Switzerland. They offer discounts on both early and last minute bookings. That makes the Interhome website a good place to start your search:
https://www.interhome.com/switzerland/: all holiday homes
https://www.interhome.com/switzerland/early-booking-discount/: find the discounts for early bookings
https://www.interhome.com/switzerland/last-minute/: find the last minute offers