Synology has Container Manager, which is their GUI frontend for Docker, so if it’ll run in Docker it’ll run on a Syno NAS. I’m running Pihole on mine just fine.
As for the M.2 drives, you can use non-Synology ones as storage. Don’t quote me on it but I’ve a feeling it “just works” in the EU where they’re not allowed to force you to use specific brands, but if it doesn’t then there’s a script that removes the restriction: https://github.com/007revad/Synology_enable_M2_volume
You should check their repo as they have other useful scripts. I’m using the one that enables dedupe on non-SSD volumes myself.
Yeah, OP didn’t say how long they’d been together but if it’s a new relationship after 3 years of being friends, especially if they’re young and/or there’s been lingering feelings for some time before becoming “official”, then anxiety and nervous excitement is likely to be high!