What I found works for me is to use Multi-Account Containers with Facebook being forced-open in a specific container (that's only for Facebook) and then using Firefox's built in Content Blocking to block trackers in other containers (Content Blocking -> Custom -> In All Windows).
This allows you to use Facebook but makes it significantly harder for them to track you across other sites (via shadow accounts or your actual profile).
For example this works for Stackoverflow where I see:
> The resource at “https://graph.facebook.com/[xxxx]/picture?type=large” was blocked because content blocking is enabled.
On mobile I simply don't install Facebook's apps and use the mobile web browser and still receive notifications via that.