Easiest way is to get a better soundcard with a better GM wavetable. Otherwise, there are lots of software that does GM - from the really cheap to the really expensive. Some of them are meant for sequencing and therefore not easy for you to play your midi files. You want something that seamlessly plays midi (ie loaded into the windows midi wavetable).
Also, you need to make sure that it does GM (ie General Midi). While XG (Yamaha) and GS (Roland) may have good sounds, if the software don't also support GM, you're still stuck as midi files are usually in GM format.