If you have an interest in Arch, I'd recommend starting with a derivative distro like EndeavourOS. It'll give you an easy installation process and a desktop that's ready to use.
Then just use it as your daily driver. You'll eventually run into the occasional issue when package X or Y upgrades and breaks something, learn to fix that, and eventually learn the "ins and outs" of Arch. That's how I started, I went from Mint to Antergos, used that for a while, then when Antergos was discontinued (RIP) I converted my install to "pure" Arch and never looked back.
RustDesk sort of fits the bill. It's open-source, has 2FA, can be self-hosted (but not needed), the client runs on anything, but the main issue here is that no amount of workarounds will make an untrusted machine any less untrusted, you're essentially extending the display and input from a dubious machine into your own.
If you're really worried about the security aspect, my suggestion would be to only use your phone as the client, and if you need to do anything more complex, use a Bluetooth keyboard connected to it. There are some foldable keyboards that don't take too much space and are not terrible.
Just echoing what others said, Plank does not run on Wayland. You can install the "Dash to Dock" Gnome extension for a very similar experience (minus widgets).
If using KDE, consider replacing Guake (which is GTK) with Yakuake (Qt).
Suggest your friend to give Eturnal a try maybe. I have it running on an Oracle free tier instance, and I use it daily to have video calls with my family using Synapse/Element (and Jitsi inside Element for group calls), and it works great. The documentation is very good too.
I have a bunch of ST6000NM0095 (which are similar specs) in my NAS, and despite already being well used when I got them, so far only one needed to be replaced in nearly 5 years of (my) usage.
My only advice with these is: if you notice a maddening noise coming from them when they're idle, update them to the latest firmware and it'll go away.
Timeshift with BTRFS kicks ass. I have mine set for daily snapshots, retained for a week. Only the changes between snapshots are stored, so the extra disk usage is minimal, and easily justified by the peace of mind in case of fuck-ups or broken updates.
I don't have the source right now, but I had the same idea not long ago, and the tl;dr is swap on a zvol is a very bad idea. If your system ever runs low on memory and actually needs to do heavy swapping, you're setting yourself up for a catastrophe.
This. And I recently found out you can also use includes in compose v2.20+, so if your stack complexity demands it, you can have a small top-level docker-compose.yml with includes to smaller compose files, per service or any other criteria you want.
What you want are two servers, one for each purpose. What you are proposing is very janky and will compromise the reliability of your services.