It is baffling. They commit themselves not only for money but in the fantasy that their club will push on to the next level. Kane isnt wanting to leave Spurs for money, it's because he realises he made a massive mistake believing Spurs would compete for the top honours. The vast majority of players would choose to earn less and win more.
Obviously there's an element of risk, financially, given form, demand and value can fluctuate or decline, but ultimately they would most likely earn more money anyway if they didn't tie themselves down to long contracts. As in almost certainly, barring extremely rare career threatening injuries (which are much rarer now than 20 years ago). These days 20 or 30 million transfer fee is considered a cheap punt for top clubs, that's the equivalent of 200k a week for 2-3 years. You could probably insure yourself against career ending injury if you're that risk averse, too.
I think it's only a matter of time until we see more top players negotiating short deals and moving clubs frequently. They will likely make more money that way anyway, as they can move out of contract/with a year left, so the player will negotiate a % of the money the buying club saves as wages/sign on fee. Kane himself said Spurs might want to sell him for "£100m". That's more money than Spurs have paid Kane himself throughout his career.
If I was a Kane level player I'd be signing one or two year deals in my 20s, spend a few years hopping around Spain, Italy, Germany, experience the different leagues, rack up numerous league titles, sample the culture and women of those nations, and keep moving to whichever club either had the best chance of winning the CL or would pay me the most, depending on my motivation at the time. I wouldn't sign a 5 year deal until I'm 30+.
The only reason players don't do it is because it's not the done thing. As soon as one or two players do it successfully, more will follow.