This is a very widespread bug that causes any empty space to fill up quickly.
The solution is pretty convoluted (involves changing the phone date), but two main culprits are Instagram and Discord, which use phone cache to store data where the system doesn’t log as app data. Try remove these and check if System Data got smaller.
The better solution is to change phone’s date 1 year into future and wait a while so iOS can be tricked into delete “old cache”. You can google it for full instructions.
Actually backing-up and reloading that backup also helps since the backup doesn’t carry any cache or logs. I’ve done it on my SO’s 12 mini just a few hours ago. So you don’t need a clean install still :D