Thanks Thom;
Actually, insurance started out as a decentralized "mutual" agreement between independent actors. Say 10 people each had a small cottage in the woods. They each had an exact replacement cost of 100 dollars. Over time, they noticed on average, 1 of the 10 homes burned down due to forest fire. Each owner needed to have 100 dollars saved up in case their house burned. This 100 dollars could not be used for investment or buying food. Therefore, the community had 1000 dollars that was stagnant. Then one smart guy came along and said, "what if we all throw 10 dollars into the pot an whosever house burns that year. Now, the community can release 900 dollars into the local economy. That is the decentralization of risk.
The key is that 1. each house must have the same replacement cost, each house must have the exact probability of being lost by the exact same peril. 3. The probability of the peril must be known and must be the same for all people participating in the pool. Otherwise, someone is subsidizing someone else in some way. To solve this problem, reinsurance mutualizes these mutuals in the exact same way.
The problems is not the concept of insurance, it is almost impossible to find pools large enough to with all of these criteria to cover the risks that they face. So they start diversifying risks, a pool of houses in a flood plain would balance a pool of houses in a fire zone as long as the numbers work. Or a tornado in the spring can balance blizzards in the winter.
As you can imagine, and especially with so much money at stake, transparency can get a little thin. Further, the insurance company does not really care if your house is going to explode settling on the gas line, they only care that the risk is priced correctly. They have little motivation to eliminate risk. So yes, there are problems with insurance, but not the problems that you suspect. These can be corrected with engineers operating on a blockchain.