How can I modify an existing FAT partition without losing its data?
Disk Utility doesn't resize FAT or ExFAT partitions on the fly, so you will need to take that drive to a Windows or UNIX computer or use another tool to resize FAT.

If you only have Disk Utility, I would create a dmg of the FAT partition and save it to the main partition.

Then you could delete the FAT partition, resize the HFS partition and recreate the new FAT section to your preference.

At that point you would choose the restore tab to place the contents from the disk image (.dmg file) onto the properly sized, but empty FAT volume.