However to store 1 bit of information at given temperature the energy difference between state corresponding to 0 and state corresponding to 1 has to be not less than something of order kT ≈ 0.02, otherwise the information would be quickly erased by thermal motion. But if we take maximum energy gap at atom that might be used for storing information to be upper bounded by atom's ionization energy [1], it turns out that it can't be larger than something of order 10 eV. So it doesn't seem to be possible to store more than hundreds or thousands of bits per atom at room temperature.
[1] https://en.wikipedia.org/wiki/Ionization_energies_of_the_ele...