Why does font-lock-mode work with various programming languages but it does not in text-mode?
font-lock-mode works fine in text-mode, it's just that text-mode does not initialise font-lock-mode by setting font-lock-defaults. Quoth (info "(elisp) Font Lock Basics"):
There are several variables that control how Font Lock mode
highlights text. ...