The entire problem lies with the pathetic lust of playing the extra batsman and not promoting Dhoni. It's the main reason why we cannot play another all rounder. In my opinion, Chahal is doing a fabulous job but second to Kuldeep. The two wristies make our death bowling, bowling up top and fifth bowler bowl certain overs of the innings and make them predictable. This is magnified because of the unimaginative captaincy.
What we truly need to do is NOT play one of the three openers. KL Rahul is being wasted. A blind man will tell you the destruction he can cause up top. Rohit in my view, is the most adaptable now to bat in the middle. If he doesn't want that, I would make the bold call of having Dhawan in the squad but not in the XI. You have to nail the combination, not please individuals. I get what Gambhir is trying to do with Ashwin at 4. He's not choosing the right guy for the job, but his idea is bang on. I'll tell you how-
KL Rahul
R Sharma
V Kohli
MS Dhoni
K Pandya
H Pandya
D Karthik
B Kumar
K Yadav
U Yadav
J Bumrah
S Raina
Y Chahal
S Kaul
S Dhawan
The above would be my squad. I don't mind Raina/K Pandya swapping, but I think Krunal deserves a run. Dhoni and Hardik bat too low at the moment. I think the Pandya's sharing 5th bowler duties renders enough protection to the bowling unit and Kohli. Karthik is the absolute ideal guy at 6/7. The guy can bat anywhere and he can float for me. He can finish, bat with the tail, bat at 4. He's the key guy for me. I don't think him and Raina are even in competition for the spot. DK is too versatile for me to miss out on the XI.
If Krunal Pandya had to play the World Cup, he should have been given a consistent run by now and by the time the WC comes, he should have had atleast 30 odd games in his kitty. But he is not likely to have that and that according to me itself makes me a potential non-starter. Krunal might offer you better bowling than Raina, but his batting does not impress. I know Raina has the short ball problem but he has been encountering that most often and just mentally, he is more wired as a batsman than Krunal. And consider me conservative, but my opinion is that I am not inclined to experiment with a 'bits and pieces' cricketer over a specialist batsman in an ODI World Cup. In T20, you can get away with that. But ODI's and tests, you most likely cant. And the Pandya brothers sharing 5th bowlers duties doesn't give me ONE iota of confidence, in English conditions. If the WC was in India, I would say yes (but that in the case Raina or Jadhav are unfit, because if they are fit, they will take that spot in Indian conditions without blinking an eyelid).
I am tending to agree with you when you say "three openers is a luxury". And seeing Rohit's form, it is clear that either Rahul is dropped and Dhawan plays or Rahul plays and Dhawan is dropped. Rahul better get some big runs in the last ODI. If he doesn't, he can't play just for his 'potential to cause destruction'.