Just in case you didn’t know this: You can temporarily root your phone by having fastboot boot from an image on your PC instead of the builtin boot partition. This requires you to unlock the bootloader, though.
I used the following method to restore my system state on several installs, and recently to migrate from my FP2 to FP4:
For backing up and restoring my contacts, messages etc. I use MyPhoneExplorer. As preparation for the migration, I temporarily root my phone by using Magisk to create a patched boot.img, copy it to my PC and then boot from it via fastboot instead of flashing it.
Then I use Titanium Backup to backup and restore all my apps and data. After reboot the phone is no longer rooted. Should you unlock the bootloader, there still seem to be risks involved when you try to re-lock your bootloader. Consensus seems to be that you shouldn’t (or has that changed and I missed it?)
It’s not exactly hassle free, but so far I found this to be the most complete solution. Except from configuring the device settings and color theme, everything is migrated.
I might give the scripts linked above a try instead. Looks like they could automate a bit more, hopefully - so thanks for that, @Volker