If router generates packet itself, it uses the IP address of the interface closest to destination. Seems to me like you're using 169.254.x.x address on VTI interface itself.
You can alter VTI address to normal rfc1918 subnet, but adjust other side accordingly. However, you can't make tunnel address equal to LAN address.
I'm not sure dnsmasq can be told which sourceIP to use, source NAT on VTI for these requests is also an option.