Changing out the freehub body from 7s to an 8/9/10 is easy. Requires you to remove the axle and the use of a 10mm allen wrench. Clean and repack your hub bearings while you're in there - knock out 2 needs at one time.
Freehub bodies cost about $30, but you can often find cheap new hubs on eBay for even less, & the bodies are the same. I've gone that route, swapped the bodies, resold the cheap hub as a 7 speed & recouped most of the $.