Try Swiss
They have a very civilised flight leaving for ZRH at 1715 with only a 45 minute connection on to Moscow. And they fly into DME.
Fares are way, way lower than BA. My most recent trips have been in Y, where return flights are less than GBP200 return. And you get full miles - at least for now.
I'm a BA Gold card holder, but no way will they get a single penny from me on the Moscow route unless I'm absolutely desparate.
PS The Aeroflot seats are indeed a vast improvement on BA's. Their service is also much better. My problems with SU are (1) their schedule and (2) Sheremyetevo.