You can run PowerCLI in 32-bit mode on a 64-bit OS.
Notice there are 2 shortcuts on your desktop after you installed PowerCLI ?
Yes, PowerCLI 5.1 is indeed not supported when running against vSPhere 4.1 Update 1.
Based on that you might have to go for an earlier PowerCLI build.
The fact that you can't do virtual HW configuration and specify an OSCustomizationSpec at the same time is a PowerCLI limitation. If you call the underlying CloneVM_Task method directly, you can do it with 1 call. But that will require a bit more scripting compared to using the New-VM followed by a Set-VM cmdlet.
The customisation of the guest OS, provided we are talking of Windows OS, is something that happens inside the guest OS and uses sysprep most of the time. Multiple methods have been suggested to see from outside the guest if this OS customisation is complete.
But unfortunately each of these has one or more flaws.
The best solution I have seen so far is the one proposed by William Lam (who else ?) in his Using A Guest Customization Script to Tell When vApp/VM Is Ready In vCloud Director post. I know it is written for a vCD environment, but the same concept can be used in a regular vSphere environment.