In 'Hardware > Memory' is the Ballooning Device disabled? Without this, Proxmox's view of RAM usage is a lot less accurate.
Other possible factors would be if it's a BSD guest instead of Linux, or where you've got any kind of PCI passthrough enabled.