When a user changes the MAC address on a network adapter, the new value is never passed to the VM reconfigure API. This is because the MAC address is populated in the VmConfigSpec only when isMacAddressVisible is set to true in the VmHardwareNetworkFormValues, which is never the case because there is no such form control isMacAddressVisible to propagate the value.
This issue is fixed in vCenter Server 8.0 Update 2b.
Workaround