Usually the airline is responsible for the cost of sending you back, as they should have checked your validity to travel.
I doubt it - you were booked to travel to Gibraltar, it is they who had the operational issue - not you.
However, I am no lawyer.