I'm going to give this a semi educated guess and hopefully someone will correct me if I'm wrong.
I think it's just a matter of size. Formaldehyde "fixes" protein. It cross links certain amino acids together rendering them inactive. When used in research, cells grown in a single flat layer on a dish need to be treated only briefly with dilute formaldehyde to kill the cells and fix the proteins. (Cells can be then used for fancy microscopy or other things.). However, when there is a whole chink of tissue, it needs to be placed in formaldehyde for hours so that the formaldehyde can make it all the way in to the tissue.
So my vote is that when we put fish in formaldehyde that is 1) pretty dilute and 2) for a pretty short time, we actually are killing SOME fish cells on the most exposed layer. It's also likely that since fish are composed of complex tissues there is protection from a few layers of dead cells (think about the organization of human skin, with dead cells continuously being shed) -- also there is a lot of mucous on the surface of the fish that probably makes them a little resistant to a chemical like formaldehyde that requires direct contact with cells to act.