The Fairphone 3 is an A/B device. It has two slots for the OS (A and B). While you use one slot, updates get installed to the other slot in the background.
If you are familiar with the fastboot command …
fastboot getvar current-slot
… should give you the slot which now doesn’t boot … or “INVALID” if something went even more wrong.
fastboot --set-active=a
or fastboot --set-active=b
… will set the slot for the next boot. Try whether the phone boots with this. The data partition is shared between the two slots, so the data will be the same and hopefully not affected so far.