For higher-security situations, ECC memory with higher overhead (more spare bits, and an ECC algorithm which made good use of them).
A DRAM-savvy OS might allocate memory so as to greatly reduce "critical data right next to untrusted data" situations.
CPU's which noticed write-heavy program behavior (and alerted the OS) would be interesting...but foolproof implementation could prove difficult.