1) Don't use a hosting panel. Ultimately, as you've said, it chews RAM making things more expensive. Generally you can google what you want to do and it'll show you the shell commands.
2) Even without a control panel, you can use (s)FTP. In Filezilla, this is done by using sftp:// as a prefix.
3) The way my DNS is done, is all through Cloudflare (except internally, obviously - that's all done through a Windows domain controller).
I used to own a VPS but found it a bit too stressful on me having to worry about all the maintenance etc on them. I would rather focus on my clients and just use a reseller through a web host with a good reputation and good understanding of someone's financial and personal situation.