Have you ever actually tried that? I have. It's possible with some router, but IIRC I had to install some custom config file from some random site. Definitely wasn't easy. I think with most routers it isn't possible at all.
If you're imagining you just forward the port to your computers IP address... no that doesn't work. Because while your computer is asleep it doesn't have an IP address. What you need to do is configure the router to forward broadcast packets to the local subnet. Something like that anyway, I can't remember the exact details.
What I've done (and again, this is routers where you have access, though maybe some somewhere have wakeonlan capabilities) is make it so that if you port knock right, the router itself sends a wakeonlan packet for you.
Maybe some have the feature if you're forwarding a port, it will send a wakeonlan packet if it detects traffic on that port.
Sorry, I don't want to be rude. If you are happy with your setup that is really all that matters. I was just seriously puzzled that's all. If someone has an OpenWrt router instead of something off the shelf, I would assume that they have it exactly for the tinkering and setting up port forwarding should be a piece of cake. Though I don't have a OpenWrt device myself so maybe this is just me being naive. On my MikroTik router this is pretty easy once you know how to do it :)
Security-wise I prefer the port forwarding because there is no third party involved and less complexity in general, but sure, you can find pros and cons here and there.
I've tried. But the Linux environment is pretty limited and Luci has stumped me more than once over the years. It's also slightly riskier: if I bork the router, it may take me (a significant amount of) time to get my network back up and running.