I don’t know the fix, but it sounds like wpautop (WordPress automatic p tags) is involved.
For example, a post is entered with 2 newlines to separate paragraphs.
Instead of 2 <br> tags, (which granted, is not semantic), wpautop converts them to <p> tags while removing whitespace characters in the process.
Discourse removes the <p> tags.
Maybe disable wpautop on the WordPress side, or whitellst p tags Discourse side?
If, instead, you let the wp-discourse plugin create an excerpt for you, all formatting will be stripped. Possibly this is something that should be fixed.