Using multi-level grayscale instead of just two pixel states, on and off, can produce readable text at even smaller font sizes. The catch is that I have to say "text", not "letters", i.e., rely on humans inferring the too-blurry letters from their context. And I do not even need a specially designed font for that.

Example: https://imgur.com/a/text-80-characters-per-line-240-pixels-w...

That's 3 horizontal pixels per character on average, including inter-character spacing.