You shut the VM down and did use uppercase "-K" (or --punchzero) with vmkfstools, right?
Try using vmkfstools -i -d thin to cold-clone the VMDK instead.
Another thing you can try is setting the following advanced parameters temporarily to 0 and then use Storage vMotion (or a cold migration) to move the the VM to another datastore:
vsish -e set /config/VMFS3/intOpts/EnableDataMovement 0
vsish -e set /config/DataMover/intOpts/HardwareAcceleratedInit 0
vsish -e set /config/DataMover/intOpts/HardwareAcceleratedMove 0
This will utilize the legacy fsdm datamover which should be able to reclaim the disk space. But this should have actually happened with sVMotions between different VMFS blocksizes already:
http://www.yellow-bricks.com/2011/02/18/blocksize-impact/