Acabo de leer cómo funciona WoL de TeamViewer aquí y dispone de dos formas. Te lo traduzco, porque para quien no entienda como funciona WoL puede ser muy confuso.
La primera, usando un ordenador siempre encendido como intermediario, en la misma subred que el objetivo. Envías la orden, y el software de TeamViewer en ese equipo envía el Magic Packet al otro equipo, que previamente habrá asociado la dirección MAC del objetivo a su ID. De esta manera no hay que abrir ningún puerto ni configurar ninguna entrada ARP, es WoL. Es el modo "Other TeamViewer within your local network".
El segundo, configuras en TV tu IP pública o DynamicDNS. De esta forma, los servidores de TeamViewer actúan de "proxy". Tú envías la orden de despertar al ID de tu equipo, el cual en los servidores de TV tendrá asociada tu IP pública. Los servidores envían a esa IP el Magic Packet. Esto es WoW, y necesitas redirigir el puerto 7 UDP (ó el 9, como tienes ya configurado) a tu equipo y añadir una entrada ARP estática. Es el modo "Public address".
Como he dicho antes, el software TeamViewer no puede levantar el equipo directamente de ninguna de las maneras, porque el equipo no tiene ni dirección IP en esos estados (S3/S4/S5). La conexión con los servidores la pierde en cuanto suspendes, hibernas o apagas así que el servidor de TeamViewer no puede comunicarse con el cliente de ninguna forma. Y la aplicación, aunque esté en memoria tampoco está funcionando.