Well, honestly, I'm not convinced any bag can survive his spines, but every time a poly bag leaks empty, the fish dies. I've recieved fish in empty breather bags anda box full of water, and the fish was fine (for what its worth).
No matter how you mark a box, it will be flipped and rotated in transit. If you have a long fish in a bag thats not big enough, the bag can be flipped so he's out of the water (and in the air portion). Without usung breather bags, the bag needs to be at least 50-75% air. Breather bags can be completely filled with water, even if they do leak.
I strongly advise a styrofoam box. Heat back, I'm not so sure about... Heat backs consume oxygen, and even if you don't go with breather bags, the oxygen in the box will run out and the heat pack will stop working. I think filling the box with good insulation (crumpled up newspaper), then running tapea lo ng the closing edge of the styrofoam to seal it will prevent fast temp changes. Slow temp changes over 72hrs isn't a bad problem.