I have been experimenting.
Confirmed as best I could that Joplin does not have the lang="XX" set anywhere in the html that is rendered in the viewer. Therefore hyphenation can't work because it doesn't know what the heck language it is parsing.
That being said. You can set the language like I did with the <div lang="en" ... mentioned in the thread earlier. I.e., You can wrap all the content with your own manual tag (any tag by the way) and if it has the lang set correctly, it should hyphenate in the viewer. Alas, it does not. So . . .
Confirmed. The Joplin Viewer can't hyphenate properly or ignores the CSS or ignores the lang attribute. I suspect it merely doesn't support hyphenation in general.
My system is Linux. Fedora Linux 32. I don't know if that has anything to do with it (slightly different viewer tech?) but if you, @betternote, say the hyphenation is working in the Jopln Viewer on your system, maybe you have a different operating system? Weird that it would work for you though.
Note, I confirmed the <div lang="en" ... work around should work (i.e., my HTML and CSS is correct) by exporting a Joplin document to HTML and opening it in the browser. The text was lovingly hyphenated without any other manipulation needed. 
It looks like the index.html that is used as the basis for the Joplin viewer is static and packed into the app.asar archive. I don't know that it would be easy to set the lang attribute for the html tag. Maybe by editing the XML DOM object on the fly? I will leave that to a develop to respond.