This is dedicated (no other software) Pi-Hole on a Pi B+ :
$ uptime
21:24:18 up 62 days, 3:22, 2 users, load average: 0.00, 0.00, 0.00
$ free -h
total used free shared buffers cached
Mem: 434M 222M 212M 26M 39M 122M
-/+ buffers/cache: 60M 374M
Swap: 99M 7.6M 92M
So yeah looks like you can size it down a bit to lets say 300MB if only running Pi-Hole.
But why not try yourself ?
Its a VM so how hard is it to change.
Ps. I can see 512MB as requirement for non VM systems to allow future things to grow.
EDIT: Comment from another KVM Pi-Hole user:
my pihole vm runs with 112MB of RAM and no swap