Hello,
We are not currently aware of any known bugs reported in the file system code; however it will certainly fail if the floppy driver provided is not able to properly read in sectors. The original code for the floppy driver does indeed have a known bug that may show under certain environments. We typically handle resolving this on a case by case basis so we can confirm it works on the target environment. The original code worked, however it used a legacy version of Bochs since it was so long ago. I.e. it may have worked when it should not have. If you are still wanting to resolve the error, please let us know and we can test it here.
We typically recommend the fat32 whitepaper released
here. It covers the standard FAT file systems, including fat32, fat16, and fat12. You can implement a generic FAT driver supporting the major variations following the whitepaper. Since you are using ImDisk, we would recommend fat32 with ATA support since no one uses floppy disks anymore.
I was a little confused about your last request for C tutorials. It is typically recommended against designing a custom file system structure unless you are already familiar with existing designs and have good reasons (i.e. something that existing designs do not solve, or something that you can do better.) Since you mentioned wanting to go "node based," have you considered ext2 or ext3?