I came across this problem a time ago. It's because of Automatic Private IP Addressing feature in Windows. As long as the tun adapter has a dhcp IP setting, OpenVPN will fall to set the IP till the tun adapter will not get an ip from 169.250/16. You can resolve this in two methods:
1) Using dhcp setting on tun adapter, add to config:
ip-win32 ipapi
route-delay 60 60
the route-delay of 60 secs is enough for windows to set that private IP.
2) Use static IP on tun adapter. Set a static IP, and use in config file:
ifconfig-noexec
Don't disable Automatic Private IP Addressing, as when using dhcp setting on tun adapter, the traffic will not run thru tunnel, even it will establish. It's a bug of windows, leaving that private IP when a DHCP IP is accesible.