I mean the Switch itself was officially unveiled in late October 2016 and launched in the first week of March 2017. Which is basically like 4 months. And that was OK because Nintendo had nothing that holiday season anyway (Wii U was dead and 3DS was geriatric by that point). PS5 was officially unveiled in June 2020 and launched 5 months later in November.
It's not the 1990s or 2000s anymore. Popular electronics being unveiled even a week before launch is normal for consumers (see Apple iPhone).
4-5 month lead time is more than enough in the 2020s.
You're going to piss off people who have just bought the older model at some point no matter what that's unavoidable, what difference does it really make if its late January or say April, that person's Switch they got for holiday that previous December is still going to be "new" in their eyes.
It is possible the Switch's successor is announced not that long before launch but the PS5 doesn't really support your argument since while it was fully shown off in June 2020 it was announced and talked about quite a bit in 2019 so anyone paying a bit of attention knew well in advance the PS5 was coming late 2020.