What’s your problem with PiHole? Why do you need Cron jobs? I’m quite happy with PiHole. If you like, I can try to help you with some questions there.
Starting from scratch can indeed be a rewarding way to learn something new and expand use cases. However, it often involves significantly more work and could lead you down a complex rabbit hole. What about ensuring that you have enough room for wiring and opting for as much open technology as possible, then progressing from where you stand?
It would be interesting to learn about your current setup, technology, and use cases.
Best of luck!
In Pi-Hole you can define groups and add devices to them and then assign block lists to those groups. I’m not sure if all your use cases are covered. Maybe you can check their discourse to see if others have found a decent way. The web interface is quite nice from my point of view.
https://discourse.pi-hole.net/t/block-internet-access-at-certain-times/12036