Bummer about the templates! That's how we do it currently. We have a few Windows Server templates with UEFI set as the default boot mode. However, our template is more of a skeleton, as it only contains CPU, RAM, Disks, UEFI boot, Secure boot, etc., but contains no OS. It's just a VM shell. From there, we then deploy the guest OS via SCCM / PXE Boot.
I bet it could be scripted somehow, as in, create the default VM the way you normally do. Once the shell is created, run a script against the new VM and set the boot firmware to UEFI. For example, as listed in the VMware Documentation, Enable or Disable UEFI Secure Boot for a Virtual Machine, do something like this:
$vm = Get-VM TestVM
$spec = New-Object VMware.Vim.VirtualMachineConfigSpec
$spec.Firmware = [VMware.Vim.GuestOsDescriptorFirmwareType]::efi
$vm.ExtensionData.ReconfigVM($spec)
I know it's still a bit manual, but since the vCenter default can't be changed, perhaps this might speed up your workflow a bit?
Cheers,
Doug