Okay, you're getting the users here confused.
You stated you have 2GB Ram, that way, dedicate only 512MB to VMWare running XP. Why, because you still have OSX running in the background. If you don't dedicate any memory to OSX, it won't run. Thats why you get extreme slow downs in 1GB dedication or 2GB in which you crash.
OSX right now is the Host and Windows XP is the guest. The host HAS to be running for the Guest to work. Since you're not using Boot Camp, that is what you have to do.
VMWare Fusion is a virtualization product. What this means is that it can virtualize a 2nd OS. It is similar to running 2 computers but you're only using 1 physical system.
When you create a VIRTUAL MACHINE, you're creating also a VIRTUAL HARD DISK. This hard disk is not a physical partition, it is basically just a single file that looks like a hard disk to VMWare Fusion. Whatever format you do during the install, it'll make changes ONLY to the virtual hard disk, leaving your actual drive utterly unchanged except for the virtual hard disk file.
Whats good with 4GB if you can't use all 4GB to windows? If you're going to use all 4GB to windows, don't run a virtual machine. Virtual Machines are meant to be run with both the HOST and the GUEST at the same time. Running 2 operating systems require the SHARING of the main ram. The more you have physically, the more you can allocate to your GUEST. Allocating too much and you'll notice a VERY LARGE slow down in your HOST.