For the first question, I presume because BA favours its own flights above those of IB. Have you tried using a third party website which may be able to offer you a better itinerary? You may be able to buy that IB flight, for instance, rather than just the options that ba.com is suggesting.
If you are travelling on a BA itinerary that involves changing between any of the London airports, then you have to collect your bags on arrival, and arrange and pay for your own transport to the other airport, and check in again at the next airport.
Flights booked on Iberia using the BA codeshare should count as 1 of the 4 BA flights required to move up levels.