From what you said you want to do, reorder the default boot order, the best mechanism for that is to renumber/rename the files in /etc/grub.d to put the (Windows?) boot first (30_os-prober to 06_os-prober for instance). Then the update-grub will rewrite the grub.cfg the way you want it, and will keep that order for every update. Editing grub.cfg directly is not recommended because it is frequently rewritten by kernel updates.
Now you can install grub to a FAT filesystem, but not during the Ubuntu install. I did that once when I wiped out the Windows MBR on a disk and had no way to reinstall it, so I used grub for the bootloader, putting the boot directory on a small FAT tools or recovery Windows partition. Note, that I was not trying to dual boot with this setup, so I didn't need to worry about grub.cfg updates.
Don't confuse how the Ubuntu install limits grub to what grub can do if run manually. Install Ubuntu to your ext4, accept default grub install (MBR and grub files in /boot/grub). Run Ubuntu, and mount your FAT at /mnt (assuming your description of FAT at second partition):
sudo mount -tvfat /dev/sda2 /mnt
Create a directory there named boot
sudo mkdir /mnt/boot
Manually install grub to the FAT partition:
sudo grub-install --boot-directory=/mnt
Your grub install now runs off files on your FAT partition, and you can edit them from Windows. Watch out for any "garbage" like carriage returns Windows editors may put into your grub.cfg file (Ubuntu and most unixes just use the line-feed as the line terminator). Updates of kernels however will cause the new grub information to be put into /boot/grub/grub.cfg, so you will need to edit your FAT grub.cfg, or copy the new grub.cfg over to FAT and edit it again (or the new kernel will not show up in the boot menu).