Ich habe den Fehler gefunden: Es sind die beiden Dioden D5 und D6, die den zusätzlichen, exponentiell ansteigenden Strom vorbei an der Stromregelung erzeugen ! Und das jeweils am Ende des Strombereiches und konstant um die 100µA in der Spitze unabhängig vom Strombereich (also besonders störend im 2mA-Bereich). Sie sind parallel zu den 4 Stromfühler-Shunts eingebaut. Wahrscheinlich wurden sie als Überspannungsschutz für die Stromregelung geplant, mit der Überlegung, dass über den beiden Si-Dioden 2 mal 0,7V abfallen müssen, bevor sie leitend werden. Dann sollten sie wohl die Shunts kurz schließen und so einen zu hohen Spannungseintrag in die Stromregelung vermeiden. Vielleicht sind sie auch bei dynamischen Prozessen wichtig: Plötzlicher Kurzschluss am vorher offenen Ausgang => es liegen 30V über dem 470Ohm-Shunt R55 an, die direkt in die Stromregelung einfließen => U12 oder U10 bzw. U11 kaputt !
Jedenfalls habe ich D5 und D6 ausgelötet und es funktioniert nun sehr gut und vor allem linear (siehe Messungen unten). Aber es gibt nun keinen Schutz mehr vor Überspannungen an den Shunts.
Weiß da vielleicht jemand eine Lösung ? Einen Schalter, der bis 1,5V absolut hochohmig ist (>1MOhm) und über 1,5V schlagartig niederohmig wird und dabei noch 2A aushalten kann ?
Hier erst mal der Beweis, dass die beiden Dioden wirklich der Grund des Stromes sind: Ich habe einfach die Diodenkennlinie in Durchlassrichtung für eine (blau) und zwei (rot) 1N4003 in Reihe gemessen. 1N4003 deswegen, weil ich keine 1N4007 hatte, die ja eigentlich für D5 und D6 verwendet werden.

Wie man leicht sieht, ist der Strom durch die Dioden mitnichten vernachlässigbar für Spannungen unter der Durchlassspannung. Man beachte auch die logarithmische Darstellung der Strom-Achse. Für eine Spannung von 0,94V (wie sie bei 2mA am 470Ohm-Shunt, bei 20mA am 47Ohm-Shunt, usw. auftritt) messe ich 170µA. Voila ! Das ist zwar etwas mehr, als die 140µA, die ich in meinen Messungen am Anfang dieses Threads gezeigt habe. Aber erstens habe ich einen anderen Diodentyp und zweitens ist der Strom in diesem Bereich der Dioden-Kennlinie extrem von der Temperatur abhängig (Generation von intrinsischen Ladungsträgern). Man möge doch nur mal 2mA einstellen, den Strom mit einem Amperemeter messen und den Finger auf D5 und/oder D6 legen: Ein Anstieg des Stroms durch Erwärmen der Dioden ist zu sehen (nur auf dem externen Amperemeter und nicht auf der internen Strommessung, denn der Strom durch die Dioden fließt ja am Stromshunt vorbei). Zu der Nichtlinearität handelt man sich also mit D5 und D6 auch eine Temperaturinstabilität beim Strom ein.
Und jetzt mal die Messungen mit ausgelöteten D5 und D6, um den finalen Beweis für deren Schuld an der Nichtlinearität zu zeigen :

Sowohl im 2mA-Bereich als auch im 20mA-Bereich ist jetzt alles schön linear. An der roten Linie (ist-Strom gegen soll-Strom aufgetragen = 1:1-Linie) erkennt man zwar nix. Aber die Abweichung (ist-Strom minus soll-Strom / blaue Linie) zeigt jetzt (dicke blaue Linie) eine schön um die Null schwankende Linie. Die maximal Abweichung beträgt +/- 1,1µA.
Übrigens bin ich auf die beiden Dioden gekommen, nachdem ich mal den Spannungsabfall über dem Shunt gemessen habe. Der war (wie es das ohmsche Gesetz so will) schön linear mit dem gemessenen Strom. Eigentlich habe ich diese Messung nur als Probe gemacht, um zu sehen, ob ich die kleinen Spannungsabweichungen überhaupt gut messen kann, mitten in der Schaltung. Dann fiel mir aber auf, dass die Schaltung genau das tat, was sie sollte: Den Strom so regeln, dass er absolut linear durch die Stromfühlershunts hindurch fließt. D.h. der Fehler konnte nicht mehr nach den Shunts seine Ursache haben. Es musste ein Strom vorbei an den Shunts fließen ! Da blieben dann nur noch D5 und D6 übrig. Ist mir übrigens beim Nachdenken auf dem Klo aufgefallen

.
Viele Grüße,
Patrick