Separate a partition for Windows (either primary partition or logical).
Install windows to that partition, and when it's done, boot with your LiveCD and fix grub.
How to recover Linux boot after that?
Boot with another system, e.g your Fedora LiveCD, chroot into your root partition, and run
grub-setup /dev/XXX to install the boot loader and re-build your grub menu file (to add loader for Windows 7).
mount /dev/XX /mnt/XX
mount --bind /dev /mnt/XX/dev
Now fix grub:
grub-mkconfig > /boot/grub/grub.cfg
I've done this multiple times, it is both possible and easy.