I agree with the theory of Sanji and Zoro having Shanks and Mihawk as their opponents at the same time, especially because Mihawk is precisely just 1 cm smaller than Shanks, just like Sanji is 1 cm smaller than Zoro, and Queen is also 1 cm smaller than King.
So this also means that there's a high probability that Mihawk will actually be Sanji's opponent.
And yeah, I know this may sound preposterous to many people, considering how Zoro is the swordsman, who wants to take the title of the world's strongest swordsman from Mihawk, but I believe it should also be taken into consideration that Zoro already became Mihawk's disciple halfway through his journey, which made it silly for Zoro to still want to defeat Mihawk in a serious fight; I see the fact that Zoro bowed to Mihawk as him throwing away his pride and acknowledging Mihawk as his superior for the sake of what he believed to be a greater good, which was to help Luffy becoming the pirate king.
Oda just has to write it well, in a way so that in the situation Sanji will really have to be the one to fight Mihawk because Zoro will be too far away from them and too busy already dealing with Shanks, for example.
And if this happens, it will not necessarily mean that Zoro will end up never being able to surpass Mihawk;
After the arc in which Sanji defeats Mihawk while Zoro defeats Shanks, by the end of the series Oda will just have to introduce a new overpowered character (I'm not talking about Shiryuu) who will also defeat Mihawk, without so much difficulty, and then Zoro will defeat the character.
By doing this, Oda will be able to make it clear that Zoro surpassed Mihawk without making the two fight.