As with all things licensing, you need to speak to your reseller or Microsoft, never take public word as fact
With that bit out the way how I read the licensing document is that as long as the cores are licensed, then you can go to the max available
So if you have a VM with 12 cores and licensed for Standard edition, you can install up to 50 instances of SQL on that same VM at no extra cost.
Now should you install 50, hell no, should you install 2, well that's a discussion. Remember SQL is designed to think it's the only thing on the box, so you have to plan CPU, RAM, DISK etc into every multi stacked instance deployment. Personally for me its always a 1 to 1 relationship.
Where "unlimited instances" comes into play is if you license the hypervisors for Enterprise you can scale up as many VM's on the hypervisors as you can handle, install SQL Ent/Std depending what you need (hell you paid for Ent for the hypervisors, you may as well install Ent and get the benefits right?) on those VM's and away you go.
Now that can get costly and you have to factor in things like failovers to other hypervisors etc on that, so most shops I been in have a dedicated hypervisor cluster for SQL VM's which is all licensed to the hilt and they can run in a N+1 setup as to what the load can take.
Again, speak with Microsoft and/or your reseller, they hold your specific licensing information and will be best placed to say how licenses need to be purchased for your agreements.