I haven't confirmed this is the issue but I've had a lightbulb moment and have a pretty strong feeling I've figured it out.
In my sketch I'm using wifi_set_sleep_type(LIGHT_SLEEP_T) which is unable to operate PMW, the 200ms delay is probably causing the ESP to go into sleep mode stopping PWM. Strange that this only happened on the very first cycle but I will be calling wifi_set_sleep_type(MODEM_SLEEP_T) whilst I need PWM running and then wifi_set_sleep_type(LIGHT_SLEEP_T) when I do not.
Thanks