The cargo hold receives the same pressurization air bled from the compressor side of the engines as the cabin does. That said...
It depends on the individual aircraft type as to how well the air to the hold is "trimmed". Some actually require "floor heat" in the way of engine compressor bleed air to keep the temperatures tolerable and help keep the cabin at a decent temperature as well.
In the end, if you put the fish in the cargo hold, it had better be in a styrofoam container (like the ones air shippers like FedEx and UPS recommend) to prevent temperature extremes, both high and low, from hurting the fish. Also, some passenger airline baggage handlers will not exercise the same care FedEx and UPS do in ensuring the live fish don't get tossed and shaken to death. I've had nice suitcases split in half by Delta Airlines. (Still, I'll check baggage rather than carry a ton of carry-ons).
nccoastal is correct in that some carriers exercise better handling practices than others. Typically, they load live shipments of anything (dog/cat kennels, fish, etc.) last so that they don't sit on the ramp for an extended period of time. That way, upon pulling into the terminal, the live cargo is first out.
Ask the airline, as they all differ in carry-on carriage policy. Make sure the container will fit in the overhead bin, and put a jacket or article of clothing under it to help dampen the vibrations that invariably happen with any flight.
If some numbnuts from another row hogs your overhead bin (and everybody else's because he's too selfish to check a few bags), take his luggage out and put it in the aisle. The stewardesses will ask for the name of the guy on the tag, have him come over, and have him check his excess baggage into the cargo hold. That way you won't have to try to shove your fish under the seat.
v/r, N-A