I don't think either runner is to blame...I can't see either one doing anything wrong or intentional.
My solution is called a common sense rule. Track and Field needs a common sense rule to supersede all other rules. In this case, the fact that the runner crossed the finish line without the baton should be meaningless. This is a no foul incident (no different than advancing someone to the finals in a heat where someone got bumped). There is nothing either runner did to impede the other or cheat. The results of the race are in no way affected by the dropped baton.
I saw an incident at a National Championship once where in the 4x800 or DMR a runner had the baton knocked out of their hand by a pole vault cross bar which had fallen on the runner's arm. In my opinion, the runner should have just kept running - and when the got to the next exchange zone touched hands with the next runners vs having to stop running midrace to go back and retrieve the baton (costing them huge amounts of time - for a no fault infraction).
Another example of where I would apply the common sense rule. I have seen a runner get DQ'ed for impeding where they were drifting out to block the runner about to pass them as they approaches the finish line. First, yes - this is an infraction, but the results should not be a DQ. But an advancement of the impeded runner ahead of the runner who drifted. A DQ essentially nullifies their entire race - as if to say they did not beat the rest of the field (which they clearly did). This would be like DQ'ing a basketball player and taking away all the points they scored in a game for a foul. BB doesn't do this because that kind of penalty does not fit the infraction. I would argue that these types of DQ's have the same issue: they over penalize the runner - or even, in this case, penalize the runner for an infraction that they did not cause, and it in no way should affect the final results of the race.
Can we have some common sense here?