You are being Intellectually dishonest with this portion of your comment. 6 out of the 7 you've mentioned above had played 1-3 more innings than Babar which led to them having a higher overall run tally, Babar didn't score more runs than these guys because he didn't have the opportunity to. Let's take a look at Finch's stats and compare them with Babar's for example. Finch scored 507 runs in 10 innings compared to Babar who scored 474 in 8 innings. Finch scored an average of 50.7 runs per match whereas Babar scored an average of 59.25 per match. The same trend continues with most of the batsmen that scored more runs than Babar in the 2019 world cup.
See the problem with your method of judging Babar's performance in the 2019 world cup? I'm by no means saying that Babar was the best batsman in the 2019 world cup all I'm saying is that he was clearly better than most of the batsmen you've mentioned above.
I thought the myth of Babar only doing well against low ranked teams was busted a long time ago but it seems like that myth is clearly still around.
Babar's stats vs the top 5 ranked ODI teams(Aus, Eng, Nz, Sa, Ind)
Innings - 54, Runs - 2500, average - 52.08, Strike rate - 89.99, hundreds - 7.
Kohli's stats vs the top 5 ranked ODI teams(Aus, Eng, Nz, Sa, Pak)
Innings - 141, Runs - 6707, average - 54.08, Strike rate - 92.23, hundreds - 22.
Babar has very good stats against top teams and he hasn't even been able to fully utilize his current form against said teams like Kohli was able to in 2018. I remember in 2020 Babar averaged less than 45 against top teams but the current version of Babar is a different beast altogether.
I actually agreed with you until you mentioned Dhoni amongst the greatest ODI batsmen of all time. I agree that Babar needs to play at least 150 ODI innings before we can start mentioning his name among the greatest ODI batsmen of all time.
Dhoni can't make the list of the greatest batsmen of all time because his stats against top teams are very weak. Also, Dhoni has never scored a hundred away from home in any format.
Dhoni's stats vs the top 5 ranked ODI teams(Aus, Eng, Nz, Sa, Pak)
Innings - 181, Runs - 6207, average - 44.97, Strike rate - 85.48, hundreds - 5.
The reason Dhoni has a high average is that he was a finisher. Overall Dhoni scores an average of just 34.2 runs per innings vs the top 5 ranked ODI teams. Compare that with Babar or Kohli who score an average of 46.2 and 47.5 runs per innings vs the top 5 ranked ODI teams respectively. That too at a considerably higher strike rate.