managing vfat partitions from linux

view story

http://www.linuxquestions.org – I have a fat32 partition on linux that is used as an image for a virtual machine running an rtos. Linux needs to be able to mount and update files on this partition. The problem is there is some kind of fs compatibility issue with the linux and rtos fat32 implementations when the fs is fragmented by linux modifying files. Is there any linux utility (preferably open-source) for defraging fat32 filesystems? My current work-around is ridiculous: staging files on an ext3 partition and moving them to the vfat partition after completion, so I'm looking for a more elegant solution but I haven't found any such tool; google search returns forums where the solution is to just not use fat32, but that is not possible with what I'm doing. Thanks (HowTos)