I think self-hosted cloud is a vague statement, but I think with your network infrastructure you will be limited in what you can do. I think cloudflare tunnel could be a good option for getting the device available online.
Then the self-hosted part. There are so many things you can look into. You can run everything in Docker, install the software you want directly on your laptop, and much more.
You'll likely also need a reverse proxy. Can use nginx proxy manager, traefik, or something similar for that.
What are your goals with the self-hosted cloud? That would help you in making it easy to find resources and others here to give you advice.
Edit: typo's
Dozens of GB sounds like there's a lot of media files to me. I'd not share that via Syncthing. Assuming that is correct: Wouldn't a media server like Jellyfin be a better fit? Or if it's photos, I recommend Immich. Note that Immich is under active development and should not be your only place to store photos.