You're going to see a bottleneck issue. Not a terribly bad one, but it will exist if you get a +$200 GPU. What's worse is that if you decide to upgrade the CPU, you will need to get a new motherboard AND RAM to go with it. Which will increase the cost from roughly $200 for a GPU up to about $450 total, assuming you get the lower-priced CPU and motherboards available.
On one user's list, the GT 520 ranks 154/216 GPUs so you know your card isn't that great. However, you do not want to spend over $200 on the GPU because the CPU won't be able to handle it. So we're trying to find a good card that you can 1) give you a large increase in performance, but 2) be within your price range of under $200-300, AND 3) Won't be an over-upgrade that'll be severely restricted by your CPU. The cards that come to my mind would be the GTX 560 or the 560 Ti series, 650 and 660 from nVidia, or the 6870, 7770, maybe th 7850, R7 250 and 260 from AMD. You have a lot of options available as any and all of those cards would be a good increase in performance for you while remaining under $200
The highest performing cards under $200 would be the 7790, 7850, 7870, R7 260X from AMD. For nVidia, they would be the GTX 650Ti, 660. I'm leaning towards recommending the R7 260X for around $140 or the GTX 650 Ti for about $150. Between the two on performance, the nod goes with the R7 260X for better performance at a lower cost. I'm seeing them in price, on average, between $130-140.
Edit: Darn you pillar for posting 1 minute before me. Yes, the current PC setup will limit you on BF4. To get it up to a good gaming level would require what I would recommend a quad core CPU, compatible motherboard, the above recommended GPU, and 8 GB DDR3 RAM (you're most likely using 4GB of DDR2 RAM).