The 5870 is no different (I'm actually using a 5870 BIOS); yes you will only have whatever res you force(can do multiple ones at once but haven't tried it), but you do always get the one you want unless the driver is created incorrectly.
If anyone wants an easy way to try and force 120hz on any setup (should work if it can read your registry EDID, can still do it if not but it's more of a bitch), give this a go (with the screen set to 60hz and whatever res you want to keep):
-Load Phoenix EDID Designer 1.3
(http://www.softsea.com/download/Phoenix-EDID-Designer.html)
-Extract Registry EDID
(Tools menu > select the listed option then click Extract EDID)
-Double the Pixel Clock
(click on the Detailed Timings tab, click the pencil icon to edit, type in double the whatever the current value is into the Pixel Clk field (round to 1 decimal place), click the disk icon to save the changes)
-Save the EDID
(don't forget to click the disk icon to save changes first, File menu > Save EDID As)
-Load Monitor Asset Manager 2.5
(http://www.entechtaiwan.com/files/moninfo.exe)
-Open the EDID you made
(File menu > Open and select the file you saved)
-Create a monitor driver
(File menu > Create INF, also check the res is correct in the right hand pane e.g. 1280x720 at 120Hz)
Now install the new driver, reboot and you should be able to select 120hz (set the res first, then go into advanced settings > monitor and set the refresh rate).