Thank you for your question. At a high level, your design issue is not specific to OSPF as much as how to design a fault tolerant network.
If your clients are connected to an OSPF enabled router/switch in your distribution layer, the minimum requirement is for a default route to be known by that router. You have achieved this by originating a default route from at least one of your core routers that is connected to your ISP (or aware of a route to your ISP). Congratulations, you have already done most of the hard work; anything extra is optimisation :-).
Static routes are normally used to enforce some sort of local policy on a specific router so they may not make sense to share in the rest of the network. This is a general point about redistribution; it’s normally best not to do it unless you really need it. If you do decide to redistribute, use care to only redistribute routes you really need using filtering and also consider redistributing only one way if possible (e.g. EIGRP ==> OSPF but not OSPF ==> EIGRP).
Lets take an example. You decide to redistribute connected routes into OSPF and so advertise the L3 interconnection link between the edge router and the firewall. This adds complexity but is unlikely to change any traffic flows or increase resilience as traffic from distribution routers is already flowing to the core switch due to the default route. Also routers in certain OSPF Areas (e.g. Totally Stubby) will not receive this routing information anyway so will be unable to act on it.
If in doubt, keep it simple!
I hope this helps,