I found it to be on most of the mp_{tablename} and not on the custom tables that i'd created.
You found what specifically on what specific tables?
You have the database on a separate VM machine from the web site, does it connect to the VM by a local network or doe sit connect over the internet? Connecting over the internet would be slow.
Is the web site on a VM? How much power does the VM have in terms of processor and memory. You need at least 1 GB of RAM on a VM for a Web Server and ideally at least 2GB or the machine does not have enough head room for running IIS etc and that will make it slow. With a VM with 2GB of RAM you could install SQL Express on the same machine and it "should" run ok, but remember that with a VM the real hardware is shared by multiple VMs and if there are too many of them on the same real hardware they will not perform well.
You will get better performance using inexpensive shared hosting than using an underpowered VM.
I can tell you that this site runs on a dedicated server with a good processor and 2GB of RAM and it is very fast with about 9 different sites running on the same machine and we have both SQL Server and My Sql also running on the same machine. We get a lot of traffic and we could handle a great deal more traffic than we get.
Best,
Joe