Seems that, when iD and StreetComplete try to do things like that, the situation gets even worse on complex relations.

They try to resort the complete relation and that sometimes breaks up everything. That's what I meant in the blog about Bus 901 https://ptna.openstreetmap.de/results/DE/BY/DE-BY-MVV-Analysis.html#bus_901 and fixing that after split-of-way in iD.