PI controller to prevent fluctuations. and properly adjusted emergency stop system. Shutdown is best done by flooding the reactor from a container of cold water. Draining hot water into an empty container. And then gradually return through the cooling towers while the reactor is in a stable mode.
The heat exchange system itself can also be used as an emergency stop. Let's say by connecting batteries or steam tanks, creating an artificial load on the reactor. It is important that while the rods are cooling down, a container of water or a thermal system is enough to keep the temperature from further increase.
in any case, as I understand it, you have an error that there is no automation at all on the control of the rod. Put at least a trite 100% when the temperature is lowered and 0% when it is exceeded. Such a system will have a high oscillation due to the huge inertia, but at least somehow will try to keep the temperature.
You can take only the proportional from the PID controller, it's simple. We subtract the current temperature from the target temperature and multiply it by a certain value (choose it yourself). This will prevent the reactor from reaching the target temperature, but will reduce fluctuations and make it safer, as the rods will cool down in advance, to the critical temperature.
If you understand what a memory cell is, then you can try with the integral. To do this, you need to output an error (the target minus the current value) to a combinator looped over itself. But you have to choose a multiplier, taking into account the scale of the change in values on the combinator. And an overflow protection system, there are many ways.
If you can correctly assemble and configure such a controller, you can keep the temperature accurate to + -5 degrees. However, you should not forget about the emergency system. If the reactor at 100% at 700 degrees suddenly loses consumers, most likely even with an instant shutdown signal, it will not have time to cool down.
P.S. You can do it differently. As in trying to do through the load to manage. Then you need a heat exchange system that is guaranteed to be able to take all the heat generated by the reactor and keep it at a given temperature. Steam is collected in tanks. When the steam buffer is full, send appropriate signals to the rods. Instead of steam, you can save energy in batteries. It will be easier to connect them, but you will need an amount comparable to a solar-powered base. Instead of steam, you can save energy in batteries. It will be easier to connect them, but you will need an amount comparable to a solar-powered base. But the logic there is generally simple. 100-A(charge level)=Control rods