I think if you shutdown a VM and the host is still able to end the vmx-process of that running VM properly, this would be enough to release the VMFS lock and you don't need to unregister the VM manually first in order to register it on another host.
Commands such as esxtop, vmware-cmd, etc. hang and do not return
I suppose you went through restarting the management agents and using vim-cmd/vimsh (http://www.virtuallyghetto.com/p/vmware-vimsh_9940.html) won't work either? If that still works you could try to unregister VMs with it:
/usr/bin/vmware-vim-cmd vmsvc/getallvms
/usr/bin/vmware-vim-cmd vmsvc/unregister [VM ID]
If that fails too, you can manually edit the vmlist file (apparantly /etc/vmware/hostd/vmInventory.xml now) on the host as mentioned here:
http://communities.vmware.com/thread/426301
http://communities.vmware.com/thread/50143
--
http://alpacapowered.wordpress.com