How to avoid flattening a shrinkwraped object?
I would add the scales to the fish mesh using a particle system. You can create a couple of separate scale objects, and then use the particle system to instantiate those on the fish skin.