1 time shrink of abused databse or restore from backup
Restoring your backup will in fact bring you right back to where you were when the backup was taken.  This is actually one of the few cases where a shrink is appropriate.  Fortunately it's a background process and shouldn't affect your system to much unless you are running a really heavy OLTP system.  Once the shrink is done, and if I was you I should shrink down about 80GB and keep the other 20 for growth, you will almost certainly have to reindex.  The reindex (and the fragmentation that requires it) will most likely cause you performance problems so you should probably consider doing the whole process during a maintenance window.  If you don't have a maintenance window then try a slow period.  Either way if you want to get rid of that extra space shrink is the only option you have that I know of.