A fast ISR is the best way to go.

But you may get away with other routes too.

For example, if you read the RTC interrupt every second to update the time and test the other things you want....