Die Ursache dieses Fehlers hat @cfeuersaenger in seiner [Antwort][1] auf die Frage [Markierung in pgfplotlegende fehlerhaft übernommen][2] erklärt.
Wie dort ebenfalls erläutert, kannst Du zum einen die Abbildung von der Externalisierung ausnehmen, dann kannst Du auch einfach nur `\tikzset{external/export next=false}` vor diese setzen.
Alternativ können auch `\tikzexternaldisable` vor und `\tikzexternalenable` nach nicht zu externalisierenden Abbildungen einfügt werden. Nähere Infos zu diesen Befehlen findest Du im pgfmanual.
Zum anderen kannst Du die Abbildung trotzdem externalisieren, musst aber bei Änderungen an der Abbildung `pdflatex -shell-escape <dateiname>` zwei Mal ausführen und dazwischen zusätzlich noch für jede betroffene Abbildung
pdflatex -shell-escape -halt-on-error -interaction=batchmode -jobname "<externalprefix><abbildungsname>" "\def\tikzexternalrealjob{<dateiname>}\input{<dateiname>}"
aufrufen. Dabei ist <dateiname> der Name der tex-Datei ohne Endung, `<externalprefix>` ist das Argument von `\tikzsetexternalprefix`. `<abbildungsname>` hat in der Voreinstellung die Struktur `<dateiname>-figure<laufende nummer>`, wobei die laufende Nummer bei 0 beginnt. Wenn das MWE aus der Frage den Dateinamen mwe.tex hat, dann lautet der Aufruf für das MWE
pdflatex -shell-escape -halt-on-error -interaction=batchmode -jobname "external_figs/LaTeX2-figure0" "external_figs/mwe-figure0" "\def\tikzexternalrealjob{mwe}\input{mwe}"
Ich habe das jetzt nur unter Windows getestet, vermute aber, dass das mit anderen Betriebssystemen genauso funktioniert.
[1]: http://texwelt.de/wissen/fragen/7948/markierung-in-pgfplotlegende-fehlerhaft-ubernommen/7973
[2]: http://texwelt.de/wissen/fragen/7948/markierung-in-pgfplotlegende-fehlerhaft-ubernommen?Seite=1#7973