I just reproduced this with my 2015 Leaf.
Once commanded, the CC ran (in heating mode -- it's around -5C here right now) for a little more than 2 hours. Once it quit, I got in, turned the Leaf on, and turned on the CC. The fans worked, but no heater.
I've spent some time over the last few weeks slowly figuring out the code flow, and how I might add things, and I don't see any glaring logic errors in the remote climate control sections. The CAN bus is flooded with "Start CC" messages for 1 second, then a 1 second pause, then a burst of "Automatically Stop CC" messages are sent, and the event is done. There is no timer set to wake up and explicitly stop the CC.
I would guess that this is something built into the car, to protect the heater coil and prevent the battery from being depleted. It's worth noting that my test cycle took 2 hours, which is 4 times the 30 minutes that Nissan's NissanConnect app will remotely run the climate control, and twice what the scheduled "I want the car to be ready at /this/ time." timer runs it.
Brian.