The uneven placement of vms while provisioning is an issue that has existed and becomes more pronounced for smaller sized pools. There are two ways to get around this
1) 5.2 has made improvements in this piece and upgrading to it should help you.
2) If an upgrade is not possible, I would suggest running the provisioning at a lower concurrency level. Edit VC from View Admin UI, and change "Max concurrent View Composer provisioning operations:" to a lower value (2 or maybe even 1 as this is a small pool). The default is 8. This would mean that the overall provisioning time will suffer, but that is most likely a one time operation. Doing this should produce more balanced results.