I doubt Mélenchon would have defeated Fillon. Mélenchon led him in the polls, but there wasn't much attention for the possibility as they basically were tied for third in the polls. The entire global establishment probably would rush to Fillon in a Mélenchon vs Fillon match-up because of Mélenchon's EU views, and the stock market would have crashed. I think that might have been enough to push Fillon over the top (and Macron probably would have endorsed Fillon as well). Pensioners voted for Macron en masse because they knew Le Pen's EU plan would screw them (despite agreeing with Le Pen on basically everything else lol). Meanwhile Fillon basically was the pensioners' candidate (dude literally got 45% of people aged 70 or over in the first round) while Mélenchon would be an even worse fit for them.
I agree that Fillon would have won against Melenchon. Some of Le Pen's voters would have defected to Fillon (if not most), because he's conservative and against too much immigration.