This is a difficult one.
Airlines are moving more and more to "you get what you pay for" as airline travel is already a commodity.
So the guy that pays a lot more for his/her ticket does so in order to have flexibility of rebooking or booking at a shorter number of days before departure or because he wants to fly on flights with a higher occupancy.
On the one hand we expect flights to be cheap, on the other hand we want added value for the price we pay.
If I would know that airlines would rebook me for a small fee or no fee anyway, would I pay a higher fare to have flexibility? Of course not.
Now this is a matter of bad luck (being late) - it's no fault of the OP but also not of the airline.
And that the airline tries to protect its departure time slot should be praised.
The big thing here is that the staff showed no empathy. And that is unforgiveable, I agree. If you are in customer service then being empathetic is key.
The cause can usually be found in very strict policies enforced by management to protect revenues and no-one with authority to make exceptions.
Has the OP tried to claim some money back from his travel insurance?