I currently have the following setup, and want to get a few upgrades to hopefully run Battlefield 3 at higher settings (if possible). Right now I can comfortably run on the 'Medium preset' with decent FPS. ('High preset' gets too low FPS)
Approximate Purchase Date: 1-2 weeks
Budget Range: $400-600
Preferred Website for Parts: newegg.com
Overclocking: Yes, have not done so yet though
SLI or Crossfire: Maybe, if necessary?
Monitor Resolution: 1920x1200
Do I have any major bottlenecks here?
Is this system worth upgrading?
At this point you are $320 in which you could buy a single 570, or wait a till the beginning of June and buy a GTX 660 for $250. But with the budget you are proposing, just get a GTX 680 and pwn everything, and if someone tries to tell you that your pci-2.0 lanes with bottleneck the 680, kick them in the teeth.
Honestly I think your best bet (since you can afford it) would be either a GTX 680 or an AMD 7900 series card. If you want the best possible gaming performance out of your PC then those are the cards to get. Ranking them by what I would expect for performance (all money aside) I would recommend the GTX 680 first, the 7970 second, and the 7950 third. You may or may not have to wait as they are all out of stock. If you prefer not to wait and don't have to have the "best of the best" then grab a 7970 or 7950.
As a side note, if you prefer not to spend the entire $400-600 and don't have to have one of the top two cards then a 7870 should give you roughly the same performance as a 7950 and is about $30 cheaper.
As far as brands go, I'm not an OCer, but my preferred video cards brand is XFX when possible. They give a lifetime warranty if you register the card on their website. After that, I've always heard ASUS and MSI make quality products, and I've had pretty good success with EVGA cards. I don't have personal experience with any other GPU brands.