OWL Schedule is biggest reason why World Cup schedule is like this. I highly suspect that for 2020 we might be having OWL teams getting a chance to host World Cup qualifiers in their own venues, if they fit them into yearly schedule differently than for this year. I mean we have France/UK, Korea, China and USA/Canada as locations so it doesn't sound unrealistic for future, but might be too soon.
Personally I think best move would be Tournament with Top-16 teams (at this year), but question is how do you determinate, which teams are Top-16? Taking Top-100 accounts for each country based of SR is not really going to get us 16 best teams. It's kinda given China, Korea and USA being at top-3, if we rank countries based of SR of Top-100 accounts, but that's not necessary Top-3 for Tournament. Neither would Sweden be rank 4 in reality like they have been couple last years for group draws.
I think only flaw with old system with 4 qualifiers in different parts of world was that certain countries got unlucky, because Korea, China and USA were kind of favored in the group draw so whichever countries from Europe avoided all 3 of them got pretty lucky and last year that was France and UK. Since qualifiers were basically split into groups based on region, but EU having so many countries not all of them could been in same qualifier at France. I can't really blame how they made the system for previous years since you want to have a lot of people in your LAN events and streams. Having USA/Canada in NA and largest EU countries in France qualifier, China in Bangkok qualifier. Korea was playing in Seoul too. That did sure help a lot with interest for people to watch streams or attend LAN surely, but didn't really make groups "even".
Although I think we did see 2017 (32 teams) and 2018 (24 teams) that at most 20 teams might be at competitive level even, if they would not win any matches, but might win some maps. I'm waiting to see though, what happens, if only about 15-20 teams will attend. Would Blizzard offer to pay those extra 5-10 teams travels?