We don't lose our custom work in Magento during Magento latest version that's why we have to follow Magento standards when doing customizations. We can not directly changed in core modules of Magento or extensions to prevent customisations.
You have to override files and modules which you want to modify instead directly changing.
You can follow official documents:
1. I need to mention, Never touch any core files.
2 Magento Settings are not changing after Update, only new features are set default you need to check.
3. For the Theme you need to create a child theme and make customization there.
4. Do you have Changed extensions from the original for your need? Ask your extension vendor or provider to update the extension.
If the Extensions are basic and not Changed for your needs no changes will be lost. Also settings of the extensions will be the same but new features are set default.
5 I do not know if you have one but if not Create a testing environment with a copy of your live website to test all the changes you want to make. This can be at your hosting or local on your pc with for example Wamp or xampp.
I Hope it helps you.