SuiteCRM 7.8+ Replaces Non-breaking Space with Unknown Character

Tested on 7.8.x, 7.10.17, and 7.11.5.
PHP 7.1

Non-breaking spaces are replaced with � in emails sent by an email campaign to the subscription list.

Very curious because this problem does not occur when using an email template in a standard email or in campaign test emails. In other words, it is only a problem when a campaign newsletter is sent to the campaign subscription list and in no other case that I can find.

We use a single SMTP account to send from the CRM.

I copied our instance to another webserver and tried it out there with the same result.

I tried some quick debugging by sticking some additional logging line into the SugarPHPMailer.php but they never seem to run. No idea why.

The only difference I can find between a test campaign email and a normal one is the,

 if ($this->test) {
                $mail->Subject = $mod_strings['LBL_PREPEND_TEST'] . $template_data['subject'];
            } else {
                $mail->Subject = $template_data['subject'];

There is more going on than that though because changing the subject would not change the translations. Can someone point me to anywhere else they know where the campaign email code is different for a test email vs production?