Podrías utilizar
html_entity_decode() para convertir las entidades HTML a sus caracteres correspondientes, luego cortar el texto y aplicar al resultado
htmlentities().
Código PHP:
<?
$texto = 'Hola soy "Michael"';
$texto2 = substr(html_entity_decode($texto),0,12);
$texto_cortado = htmlentities($texto2);
echo $texto_cortado; // Imprime Hola soy "Mi
?>
Saludos.