en el primer... if ... asignas el primer valor obtenido del query a $row... ese es tu error, ya que toma el primer valor y por ende, al hacer el siguiente while/do ¡¡ya no existen mas registros a asignar a $row!!
Cita: if ($row = mysql_fetch_array($clientes))
no se si me entiendas, o este en lo correcto... pero parece ser así, suerte!
PDTA: la verdad, yo quitaría esa asignación de $row, por solo una comparación... si es true, adelante