There is an interesting article in the Times about the decline in BA's customer service, and the frustration of the staff who work for BA.
As far as I can see, the fundamental problem is that there is no defined career progression for cabin staff.
Fly another airline, eg Virgin, and you will see that the staff are relatively young, after several years they are promoted to more "admin" type roles.
BA, on the other hand, are more often than not crewed by staff who have spent up to 20 years or more flying.
All very well wrt experience. However, after a few years of flying the novelty and enthusiasm soon wears off.
I have spoken to many staff on long haul flights, they are brassed off (to put it mildly) with how the company treats them; this frustration ends up being taken out on the customers, albeit unintentionally.
BTW, as per the article, I too have experienced broken seats (in first class!).
BA is a company that is long past its sell by date.