Added a 200 millisecond delay after executing the page write command. This helped --- the temporary page buffer stopped spoiling. I don’t like this solution at all, and if the modern chips behave in the same way, then I'll return in search of a mistake, but so far they are not at hand.
#AtMega8