A few comments.
1) you must set WOL active in the bios of your computer
2) the router does not issue the magic packet to a specific MAC address - it only has to send it out to the network.
3) it is the computer that has to have the NIC live to be able to receive the magic packet and so activate the WOL feature to bring the computer out of sleep.
4) your example requires the router to know where to send the magic packet which is not required if you use WOL correctly.
I can wake any computer at work from home and frequently do to check the status of projects. We do not have a router at work, it is replaced by an internet modem and several linked managed switches (DHCP service is supplied by our e-mail server). All of our computers are never turned off but go into sleep mode and all have WOL aware NICs and WOL set active in bios.
All I can say is it works for us and should work for you.
1) Yes, it is working from the internal network
2) I know
3) Yep
4) Not really where to send it, but to forward the port to the right direction
My issue is that the MAC address of my WOL client computer won't be in the router's ARP table because, as the WOL client is powered-off, such an ARP entry would have aged out. When my router receives an IP packet port-forwarded to the WOL client's IP address while the WOL client is powered-off and its MAC address is aged out of the ARP table the router will not be able to deliver the packet to the client. I would need a router with static ARP capability to make this work.
The broadcast from the internet is less likely, since I don't have a public subnet behind my router, but rather I am using NAT to share a single public IP address on my LAN, there's no way to remotely address a packet to the subnet-broadcast address of my LAN subnet such that the router (if it could forward directed broadcasts) would generate a layer 2 broadcast with the WOL packet to allow the WOL client to "see" it.
Your DHCP server most likely keep a record out of this. How do you wake the computers from work? In order for you to broadcast, you need to remote access a computer and do it from it or connect to VPN.