if you buy a better graphics card, the processor will throttle the performance in the games - the card can take advantage of the new features eg bump mappging/shaders etc etc, but the cpu won’t be powerful enough to pump out the frames needed to appreciate them, so you’ll have to turn off these special effects in order to get playable rates.
if you are looking for a cheap upgrade that will help greatly, get a 9800PRO for about £90. (its an awesome card for a great price, but bear in mind you wont be able to take full advantage of it as the cpu will not churn out fps fast enough, as previously stated)
Then at a later date, consider upgrading CPU and mobo.
The best bang for the buck card is arguably the 6600GT (AGP version is a little more expensive but still under 200 dollars). It can’t truely be used for all it’s worth with your current processor but It’s not mandatory for you to upgrade just yet. You can always hoard you money and buy a new mobo, proc, and a spanking new video card but I’d stick with the card for now.
You should be able to put up to a 2.(x)B Pentium 4, but considering the age, you may not want to invest too much more into that current system. Waffle’s right: the 9800Pro is probably the best bet for a single upgrade. If you want to go over that, you really would be better off to start considering an entirely new rig.
Additionally, your motherboard may require a BIOS update to properly recongnize your new CPU. The i845E is on the old side, and I’m not 100% sure I’m remember the chipset’s CPU support correctly. The other possible problem is if the motherboard is using the Socket 423. If it is, you’re at your max CPU speed available, so make sure to verify that info first. But still, don’t drop gobs of cash on that rig.