It's because AY will have bought a certain number of seats at a given price/fare bucket from BA as part of the codeshare agreement. They can then sell those seats at whatever price they like (presumably within the remit of the agreement), and it's also perfectly possible that AY will still have availability in lower fare buckets whereas BA might well be sold out. Either or both could be factors.
As has been said, the opposite is actually true on the well advertised LHR-HEL-TLL route, where Business Class on the BA codeshare numbers is actually about one third of the price of the AY numbers.
The downside in your case (BA metal, AY code) is less Avios when crediting to BAEC, but for that price difference it shouldn't be a consideration.