Ola, Helder !
Uma classe muito grande é sinal de que ela esta fazendo coisas que não deveria fazer.
Sobre a responsabilidade, sim, tem a ver com a responsabilidade sim. Ao quebrar essa classe surge opções, por exemplo, poderia ter dois tipos de notas fiscais e o gerador pode gerar as notas fiscais tanto para um tipo de nota fiscal quanto pra outro tipo de nota fiscal. Entendeu?
Agora sobre sua ultima pergunta: Uma NotaFiscal não deve gerar novas notas fiscais?
A resposta é DEPENDE, para o exemplo do curso de : Refatorando na prática, foi utilizado como exemplo. Mas se para uma determinada situação fizer sentido a Classe NotaFiscal Gerar uma NovaNotaFiscal, você poderá deixar o metodo dentro da classe NotaFisca.
Mas tudo depende da necessidade e da coesão.
Ajudei ?
Abraço!