If that weather station software is written in a portable way (Python?), it could be actually easier to port it on a board which has proper battery support. Then you could simply configure shutdown on low battery in OS settings, and the only thing you would need to implement in hardware is a reset signal as rising_edge(PSU_OK) AND not(CPU_RUNNING)
which can be done with a couple of BJTs and an RC timing circuit to detect the edge. Single-board computers with battery support also typically stop draining the battery when you switch them off, which is not the case of the RPi.
If you want to stick with using the RPi, using an Arduino for power management is not a bad idea at all. It will let you change all your parameters (battery voltage threshold, shundown/reset timings) easily, which won't be the case if you implement this in hardware.
One should also bear in mind that the RPi also needs you to supply a battery charging circuit with overcharge and over-discharge protection (but you probably know that already).