$row = $stmt->fetch(PDO::FETCH_ASSOC);
es la línea que causará su error.
¿Por qué?
Porque no hay nada que buscar, en la matriz, después de una actualización
Recuerda que
Por lo tanto, no hay conjunto de resultados... no hay fiesta
Si desea conocer el estado de salida de su comando, simplemente use el valor de retorno de execute()
función
$rv = $stmt->execute(array('USERNAME' => $USERNAME));