Have you reinstalled your video card drivers? If so, have you done a 'clean' install?
I'll post this either way, for the sake of saving you time, disregard if you've already done this, exactly this way.
From control panel, device manager, expand the tree next to 'Display Adapter', it will list your GTX 460, right click it, select uninstall, and select to remove the driver as well, do 'not' restart, you need to run DriverSweeper first, we'll get to that. Now from control panel, go to add/remove programs, or simply click 'Uninstall a program' below it, from there remove all Nvidia software. When this is finished, browse to your C:\ drive, find the Nvidia folder, and delete it. It's been a while, but if it's like ATI, it's directly in the root of C, C:\Nvidia
Don't restart yet.
Download this driver, even if you think you have it already, just in case you've accidentally used the wrong driver, and it for whatever reason allowed you to install.
You need to do a clean install, so, download DriverSweeper and run this application 'after' you've uninstalled all of your Nvidia software. http://downloads.guru3d.com/downloadget.php?id=1655&file=4&evp=b0e23b57cdae2217c3d377655ad3ce34
< Avoid the fake download links, simply click the "I Agree" at the bottom.
Now run DriverSweeper, when you're done, reboot, and install the new driver software suite, then reboot again.
Not finished yet, now:
As was said above, you should uninstall the game, 'AND' remove ALL folders left behind, these may have saved games, config settings, etc etc, something may be corrupt. IF, you have the Steam version, rather than reinstall the game, simply right click it in steam, select properties, select the 'local files' tab, and choose 'Verify integrity of game cache', and if any files are corrupt, it will reaquire them automatically for you as it verifies, this can take a few minutes.
So you have clean drivers, and a fresh install, or verified install of the game, now you're ready to play the game and test it out.
If the problem persists, read below. Post back. After you've done everything above, you can try this.
Additionally, to check your temps:
Take a close look at HWMonitor while it's open. You will see that there are 3 temps for each device, the realtime temp, the lowest temp, and the highest temp.
Simply leave the program open, play a game for a while, then exit the game and bring up HWMonitor, have a look at the 'max' temps for your video card, the max temps are the ones furthest to the right. If you have a look at the header, above each column, you'll see, and it will instantly make sense to you.
Anyways, those temps are average and perfectly normal, but I would try one more time the way I mentioned above, to be certain. It should only take 10 minutes of gameplay. It's a DX11 game, your card is DX11, unified, therefor it will make use of the Gpu very, very well, unlike DX9 games which often leave many ALU's standing idle because of the old fixed function design of DX9 Gpu's. Not to run off topic, I just mean to say that BC2 is a perfect game to get your video card as hot as it can possibly get, well for a game, I think Furmark would take tops on heat.