I've double-checked everything and all charsets are fine - as I said, it's the same content from the same database on 8 different sites, all hosted on the same server, same page template, same page encoding but special characters don't display properly on just one of those sites. The top of all pages is as follows:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
The pcms2_contents table default collation is utf8_bin and the ContentValue column is also utf8_bin.
There wasn't a charset declaration in the PowerCMSConnection.php file, however I added one as follows to see if it would make a difference but it hasn't:
mysql_set_charset('utf8',$PowerCMSConnection);