Wait for nvidia's pascal so you can get a card with HBM2 (likely the GTX 1070 or GTX 1080), or one of the lower end cards that will use GDDR5X (likely the GTX 1060 and GTX 1050), both memory technologies are better than the current GDDR5. Basically, wait for nvidia's next line of cards (Q2 2016). Right now is a time where GPU's are taking a big leap forward, this happens about every 3 or 4 years. Seriously, wait for next year's line of cards. You can wait for AMD's 400 series which will have the advanced memory as well.
You should also double your ram to 16GB
Your processor will be good for another 3 years at least. My little brother still has an i7 920, Intel's first generation of the i7, it runs stock at 2.66 ghz but I overclocked it to 3.8 ghz and it can handle any game that is thrown at it.
But if you really want to upgrade now, and it sounds like you have either an mATX or ITX build considering you said you only have one PCI-E slot, you can get the AMD Fury Nano, there isn't a better card out there with such a small form factor,
and just because it's small doesn't mean it isn't as good as say the full size Fury, it's just a bit thicker and the reason it is so small is because with HBM memory you can stack the vram chips. Next generation of GPU's are all going to be a lot smaller than the monster 980 ti, and run a lot faster, because of HBM and how it works.
Be patient and wait. I promise if you spend a ton of money on a 980 or 980 ti, you're going to regret it considering we're so close to the next gen cards. But in the meantime, double your ram, seriously. I promise games will run better, and you'll be future proofing.
I made a small mistake when I built my rig, if I'd have waited a couple of weeks I'd have the 4GB versions of the GTX 760, a z97 mobo instead of a z87 mobo, and a 4790K