Someone has to take the risk that life happens. You can take that risk (non-refundable) or you can pay the airline a higher price to take that risk (refundable).
This is an industry that has a history of ever-increasing executive pay rates with gradual reductions in service quality, gradual increases in incidental fees, frequent bankruptcies, and occasional governmental bail-outs.
The solution is to self-insure by having $1000, or whatever, ready for if you need it for increased travel costs or other emergencies. And try to avoid feeling either anger or regret if you have to change your plans. If you don't have a spare few hundred bucks then this method isn't available to you.