$row = $stmt->fetch(PDO::FETCH_ASSOC);
é a linha que causará seu erro. Por quê?
Porque não há nada para buscar - em array - após uma atualização
Lembre-se disso
Portanto, nenhum conjunto de resultados ... nenhuma festa
Se você quiser saber o status de saída do seu comando, basta usar o valor de retorno de
execute()
função $rv = $stmt->execute(array('USERNAME' => $USERNAME));