Tremendo lio que tienes, ¿desde cuando puedes meter FUNCIONES de PHP dentro de comillas?
No te elimina la ultima "," porque tu al separar no solo agregas ",". Tu agregas ", " ¿notas el espacio? Por eso el substr tiene que ser de 0 a -2.
Código PHP:
$prueba=ucwords(strtolower($trozos[0])).' '.ucwords(strtolower($row['alupat'])).', ';
echo substr($prueba,0,-2);
//Tambien deberias considerar usar sprintf() para que el codigo sea mas entendible.
$prueba .= sprintf('%s %s, ',
ucwords(strtolower($trozos[0])),
ucwords(strtolower($row['alupat']))
);