My solution to this (and to issues like this outside of software) is extreme but it will fix the problem. When one side creates a contract of any sort (ToS, EULA, phone contract, home buying contract) which primary purpose is to be signed by numerous other individuals who have little to no ability to alter the contract, the other parties are allowed to use lack of understanding to break the entire contract unless the creator can show beyond reasonable doubt (I would use clear and convincing, but that would be abused) that the signer did understand the entirety of the contract.
It would break contract law as we know it, but it would force simple, easy to understand contracts and it would penalize any robo signing practices. (Personal story: last time I went to a phone company, they gave the contract to read on a small device where I could only read 2 lines at a time and where part of the display was broken. I wasn't allowed a print out of the contract until after I signed. I walked away and have to this day not gotten a smartphone because of the downright evil practices of cell phone companies).