I've tried multiple pieces of DHCP client and software in attempting to setup a solution for allocating a /127 prefix to virtual machines so that each maintains its own layer 2 isolation. Because there would only be one host assigned to each network, a /64 is impractical.
While the prefix size could reasonably be somewhere in the /64-127 range, the crux of the problem has been the same regardless of the software used in configuring: the DHCP call to bring up the interface uses the address advertised by DHCPv6 and inserts two routes: the /127 given by the router advertising packets and a /64 as well.
Any thoughts on why I'm getting the additional route added across dhcp client vendors?
SLAAC only work with /64 networks because the host needs the right-most 64 bits for it's generated EUI64 address [1]. So if the host determines it needs to do SLAAC (either because your Router Advertisements indicate so, or the host chooses to ignore your RA flags) thwn it has no choice but to make a /64 address.
You need to make sure your hosts aren't deciding to create SLAAC addresses for themselves. [2]
[1] See "Stateless Address Assignment" on this page https://supportforums.cisco.com/docs/DOC-23871
[2] For Linux, this may work: Is there a way to disable IPv6 SLAAC on a per-interface basis in Debian?