With Essentials Kit, if I have 2 x 8 core CPUs for the VM host, can I assign 12 cpus to a VM guest or will the VM guest be limited to 8 cpus?
As you can see in the table you mentioned, all vSphere 5.1 versions - up to Standard - support a maximum of 8 virtual CPUs. When you provision vCPUs, remember that all VMs plus the host have to share the resources. Personally I only know very few cases where it might be required to assign more than 4 vCPUs. Best practice is to start low on resources and increase them only if really required.
With ESXi 5 free, vCPU limit is 32. Does that mean a max of 32 cpus can be assigned to VM guest?
I think you are mixing up the maximum of 32GB physical memory with vCPUs here. Unless I'm mistaken, the free Hypervisor is also limited to 8 vCPUs. Only during evaluation mode (which equals Enterprise Plus) you can assign more than 8 vCPUs to a VM.
André