There is a second way, and one which I've had to use with VMs with dynamic disks.
Create a new disk on the VM of the same size as the one you need to align. In the VM run diskpart and:
select disk X
create partition primary align=32
(where X is the new disk number)
Boot with a Boot CD such as BartsPE, or shut the machine down, detach the disks and attach as secondary disks to another VM. Run:
xcopy d:*.* e😕 /S /V /C /H /R /K /O /X /Y
(with the appropriate drive letters where I have d: and e:). That will copy all the data to the new aligned drive. Drop the original drive from the VM (leaving it on disk just in case), restart the VM and when Windows asks for a reboot, let it.
Are you sure this is the case. I understand that there is no need for VMFS partition alignment on NFS (that you would normally get by setting the partition type to VMware when using LUNs), however the guest partitions are still going to be offset within the VMDK, and not aligned with netapp block boundaries, thereby still causing partial writes whether on NFS or VMFS. Unless I am completely reading the situation incorrectly.
I'm not certain where everyone is getting their information regarding NFS, but it is wrong. Windows 2003 does not use a partition offset that is aligned with the NetApp 4k WAFL block boundaries. You still MUST align your Windows 2003 and older VMs. Please read http://www.netapp.com/us/library/technical-reports/tr-3747.html. Now since you are using ESXi it complicates things, since as you noted, mbralign requires the use of a service console. There are some tricks with the use of NFS datastore,s by that you can have a Linux host that also mounts the NFS export and you run mbralign there or you can stand up a ESX host for the duration of your alignment.