The way Nxt does it is actually quite clever and solves the nothing at stake problem, there is more to it than this but the part of it that I understand is that choosing who forges next is every forger does SHA(last forger public key) Somehow how long ago an account forged and how many nxt owned by that account and information from the last block is factored in as well. The winner is the one who has the largest hash.
Saying you know something is solved because of "somehow" kinda implies you don't know it is solved right?

The network can't require a specific account solve a given block as if it did then it would be easy to halt the chain by just not solving a block when it is your turn. The network instead favors one block over another one at a given height. However what happens when both chains have blocks that are worse than the block on the other chain at a given height. Ultimately the attacker (which had 51% of the stake at the point of the split) will build the best chain overall despite each chain having better or worse blocks at any given height.
Does the secret sauce in NXT prevent a 51% attack by a stakeholder who had a majority of the stake but no longer has it? Maybe. Saying "somehow" or "secret stuff" makes it stronger is hardly compelling though. No explanation of what is publicly available provides a credible reason why the network can't be attacked. If it really does solve it then eventually it will be publicly available and clear to everyone right?