While I still don’t know exactly why this happened (and would welcome explanations!) it seems to be fixed now.
I went over the networking configuration with a fine tooth comb, and discovered to my chagrin that the default gateway had a typo in it!
[dc1]: PS C:\Users\Administrator\Documents> Get-NetRoute -PolicyStore PersistentStore -AddressFamily IPv6
ifIndex DestinationPrefix NextHop RouteMetric PolicyStore
------- ----------------- ------- ----------- -----------
12 ::/0 2001:db8:116:bf::1 256 Persiste...
Um, oops! 116:bf
should be 16:bf
.
So I fixed the typo, and for good measure deleted the ULA address from the Ethernet interface, and voila, no more extra RAs, and my network is happy again.
[dc1]: PS C:\Users\Administrator\Documents> Remove-NetRoute -NextHop 2001:db8:116:bf::1
Confirm
Are you sure you want to perform this action?
Performing operation "Remove" on Target "NetRoute -DestinationPrefix ::/0 -InterfaceIndex 12 -NextHop 2001:db8:116:bf::1 -Store Active"
[Y] Yes [A] Yes to All [N] No [L] No to All [?] Help (default is "Y"): y
Confirm
Are you sure you want to perform this action?
Performing operation "Remove" on Target "NetRoute -DestinationPrefix ::/0 -InterfaceIndex 12 -NextHop 2001:db8:116:bf::1 -Store Persistent"
[Y] Yes [A] Yes to All [N] No [L] No to All [?] Help (default is "Y"): y
[dc1]: PS C:\Users\Administrator\Documents> New-NetRoute -NextHop 2001:db8:16:bf::1 -DestinationPrefix ::/0 -InterfaceIndex 12
ifIndex DestinationPrefix NextHop RouteMetric PolicyStore
------- ----------------- ------- ----------- -----------
12 ::/0 2001:db8:16:bf::1 256 ActiveStore
12 ::/0 2001:db8:16:bf::1 256 Persiste...
[dc1]: PS C:\Users\Administrator\Documents> Remove-NetIPAddress -AddressFamily IPv6 -IPAddress fd4a:e7ab:34a5:0:807e:e44a:7ffc:ea90 -PrefixLength 64
Confirm
Are you sure you want to perform this action?
Performing operation "Remove" on Target "NetIPAddress -IPv6Address fd4a:e7ab:34a5:0:807e:e44a:7ffc:ea90 -InterfaceIndex 12 -Store Active"
[Y] Yes [A] Yes to All [N] No [L] No to All [?] Help (default is "Y"): y
No further sign of ULAs in neighbor solicitations, router advertisements or anywhere else, says Wireshark.