SQL server has a very high per core license cost, but for a lot of workloads benefits more from lots of RAM. his is now even more of the case with in-memory tables.
Even if a server with 4 cores cost more than a server with 16 cores, it may still be worth it for the saved license costs!
It seems to be that number of cores is now the new meaningless marketing number.
Given how cheap RAM is, I don’t consider 384GB to be a lot of Ram!
Update, thanks for everyone’s input, I have also just found Selecting a Processor for SQL Server 2014 on sqlperformance.com that covers the options well.
Well, first of all you can always disable cores in the server's BIOS if you really want, or buy a server with a specifically lower core-count (HP etc. do make them) but one of the main reasons why it is 'so hard to get servers with lots of RAM but few cores' is because there's a very small market for them.
This is quite possible. An example I have is an application I support where core count is not as important as single-threaded performance. So I have these systems optimized for the application:
These are current-generation Sandy/Ivy-Bridge CPUs, so I specify Intel E5-2643 quad-core and E5-2643 v2 hex-core processors running at 3.30GHz and 3.50GHz, respectively, to handle the workload. The servers accommodate the same amount of RAM as higher-core-count CPUs.
You also have access to the Intel E5-2637 (and v2) processor, which is available in 2 and 4 cores.
I find several 'mistakes' in your question.
Why don't you run the database server in the virtual machine with the appropriate number of cores allocated? As a bonus it will be more wieldy to administer.