It would appear yes you can.
Download VirtualBox and install it on the external drive.
Then when you create a Virtual Hard Drive for XP - double check it is created on the same external drive.
Don't forget the "Extensions pack" Download this and save to external drive. Once you have created a virtual machine for XP you may be prompted for the "Guest additions cd" - this is the Extension pack - it should install and give you more features on the virtual pc including USB connection to hardware.