SMT, while I sympathise with your view it is neither the FAs nor the airlines fault, on the day. They are simply trying to accommodate all the fare paying passengers.
However what I think airlines must do is to include something in their conditions of carriage. Something along the lines of ...
1. The fare you have purchased is for accommodation in one (1) seat in your chosen class of service. (Insert here a clear description of the minimum seat size in each cabin).
2. If you are unable to fit in our seat, or if you require additional space for any reason, you must purchase a second seat at the applicable tariff and you must advise us at time of booking that you require adjacent seats. (or, for Cryanair types: you must arrive at the gate sufficiently in advance to secure two adjacent seats. We recommend that you purchase our rip-off advance boarding product. A charge for each seat will apply
). Otherwise we cannot guarantee that adjacent seats will be available. Should you fail to secure adjacent seats we will not accommodate you on our flight.
Having something like this will shift the responsibility back onto the individual traveller, where it should be. Airlines could include a "if our flight is not full, well give you a refund clause" but the passenger should pay up front.