For the Price (and power efficiency), Id go with a Radeon HD 3870 or 3850. If money isnt much concern though, go with nVidia's top GeForce offerings -- at this time a step above the Radeon cards. I know that there are 3850 and 3870 cards that will fit in your size constraints, i dont know about the nVidia cards since i dont keep up with them as much.
If you do go for the Radeons, id recommend getting a HIS or Sapphire brand. HIS is my fav, but Sapphire has better prices, and decent components except sometimes the fans can go out or run too slow to keep the temp down.
Id say on a scale of 1-10, the 3870 is like an 8 with the GeForces being a 10. it'll do everything you want it to do though