I had thought there was a way to manually weight IPv6 addresses in Windows. For example, if I had 2001:db8:1::1/64 and 2001:db8:2::1, I would be able to override the OS's selection of the "preferred" address, but I've been unable to find anything.
MAybe some preferred_lft setting? and putting the one you don't want to source as, at 0?
You can use the prefix policy and weigh one prefix higher as the other.
See here: https://sites.google.com/site/jrey42/Home/ipv6/prefixpolicies
I tried doing that and it didn't work...but it's very possible I did something incorrectly.