It's Nintendo, which means two things:
1) They absolutely won't release a game until it hits their threshold for quality. Generally speaking this is great and is why their games are revered decades later.
2) They will intentionally hold back releasing games until they think it makes the most financial sense. There have been plenty of examples of this.
Botw 2 was just gonna be dlc, then they decided to make it a full game. Absolutely they could have (and possibly did) finished it a while ago, but I predict they intentionally kept it from releasing until this year to boost Pro sales.
If they are holding it back intentionally, then they are doing a masterful job of it.
Nintendo Boss: "Listen I know BotW2 is finished, but don't release any new footage. We gotta wait until Switch sells under 300,000 units a week for more than a few weeks. Until then just keep polishing it, and adding a couple things here and there."