Tente chamar
mysql_set_charset('utf8');
após conectar-se ao banco de dados. Eu acho que é semelhante a executar uma consulta SET NAMES, mas como o manual do PHP diz que é recomendado usar essa função em uma consulta SET NAMES, eu tentaria. Além disso, ao exibir seu conteúdo, você pode tentar
echo htmlentities($string, ENT_COMPAT, 'UTF-8');