I think modern POS (like Casper, or deligated POS) have a solution on the majority of the issues described by OP. Casper (should) effectively punish malicious actors if hard fork occurs, and delegated POS makes it nearly impossible for a malicious actor to gain enough support to be voted into validator position. They both have their issues (like major centralization of DPOS) but my strong belief they should be developed and tested at scale anyway.
check out Casper docs for more info
https://github.com/ethereum/wiki/wiki/Proof-of-Stake-FAQs