An HD5770. The E5300 isn't a powerful processor, and it'll suffer from an HD4890.
^+1 That processor OC easily and well and should handle 3.3-3.5ghz just on the stock cooler. You motherboard should handle it easily as well. Forget about the HD4890 and choose between the HD5770 and the GTX 460.
require a lot less power and generate a lot less heat than a 460, and are can be found in very small formats.
460 would be an overkill for ur system anyway.
It wouldn't be overkill if he OCs the processor and has a high resolution monitor. Resolution is a good question actually as it is important when picking out a card so tell us your monitors native resolution.
i got a hp w1707 monitor that runs at 900x1440 its 720 p if that matters
its 17inch i think
At that resolution just get the HD5770. It is already overkill. If you are going to upgrade to 1920x1080 before too long then consider the GTX 460.