In terms of tools, there is (recently) Raycast Focus which is a very lightweight implementation of the idea of removing distracting apps and sites.
For me the issue is internal - if I'm having a distracted day, its very hard to turn it into a focused day.
And a focused day (wake up, have something to eat, focus on tasks) must be handled with care... it very easily becomes a distracted day.