Thanks for the comments!
I already noticed an imbalance in heat dissipation, the misplaced load sharing resistors explains that. I wasn't able to do a real temperature simulation, the transistor model I found for the power transistors doesn't have that (or I didn't notice).
Funny thing, those base resistors were not really meant for load sharing, I just put them to lower the power dissipation of the TIP31C a bit. Ah well, I didn't know better.
The opamp circuit for the current limiting was added because I couldn't figure out a way to use the built-in limiting circuit of the LM723 without it. It seems it's just a transistor that pulls down the input of the internal output stage, the limit pin being the base of that transistor.
The current limiting is not very clever altogether, but that's probably in the nature of the LM723, it will just reduce the output voltage once you get beyond the set-point to keep the current stable, and that will of course increase power dissipated in the pass transistors. I'll have to think about a protection there - temperature sensor on the heat sink probably, as you suggested.
I guess it's a good opportunity to redo the design, I wanted to move it to Kicad anyway and to figure out how simulation works there. I'm also thinking about the mechanical construction, I think I'll flip the pass transistors around so that I can mount the PCB onto the heatsink, with the transistors under the PCB. Would make for a more compact design.