Don't get me wrong, I definitely don't encourage to keep your coins where you don't possess the private keys to move them. I know and understand the message of "Not your keys, not your coins!".
Users of non-custodial wallets have to understand and accept the responsibilities they have with using such wallets. There's no way around this, in my opinion
With non custodial wallets, full control of our coins but we must secure our device, wallets very safely. With acount on centralized exchanges, there are different layers to hack it, like account password, 2FA for account, email password, 2FA for email and also detective tools of centralized exchanges that can be so powerful to detect suspicious login and activities of a hacked account.