1. Use a hardware wallet. If you can't afford one, make sure your PC is clean and use an open source desktop wallet (e.g Electrum) that give you control over your private keys.
2. Don't store your funds in exchange for a long period of time. Deposit, trade instantly and withdraw.
I think the best solution is to improve the site's security. For it will also protect the user's account it will also protect the site's sources. "Improve security, less hacks"