Not being a regular BA traveller but a locked-in-to-Skyteam traveller, I actually admire this policy of BA giving priority to Elite cardholders and full-fare passengers in their respective cabins.
Not so on KLM where you can reserve seats but only the bad ones these days and where they sell off the emergency exit seats for EUR 50 to every Tom/Dick/Harry on more and more routes on the internet check-in.
Where this BA policy should be adjusted in my opinion is for the J-cabin, it's a bit ridiculous that you cannot reserve there as even a discounted J fare is still a very expensive fare.
My guess is that with ever-improving J-service, BA needed to build in some additional differences between F and J cabins.