DOS does not immediately erase a file or directory when it is deleted. In fact, it does nothing to the clusters that contain the information (this is why it is sometimes possible to un-delete something). However, DOS does zero out the file/directory's cluster chain from the FAT table and places a special character (0xe5) in the first byte of the directory entry signaling that this entry has been deleted. You will need to do the same when a file or directory is deleted. Start with the cluster indicated in the directory entry, traverse the cluster chain, and then set each FAT entry to zero including the EOC entry.
The special code 0xe5 in the first byte of a directory entry, indicates that this directory entry is free, and may be overwritten with a new entry in the future. Place this value in the first byte of the directory entry to effectively delete it (it will be the first character of the file/directory name field). When reading directory entries, ignore all entries that begin with 0xe5.
When making any change to the FAT 1 table, copy the FAT 1 table to the FAT 2 table, EXCEPT when deleting a file.