You did pretty well for 4N35s.
One of those linear optocouplers with the built-in feedback phototransistor is the TIL300. It's quite an old part now but on paper, it's slightly faster than the 4N35, and with none of the CTR variation issues of course. I'd be surprised if there isn't a faster equivalent available these days.
Thanks! I was doubious about this design but I had the things to set a breadboard and test, it did surprised me. I wish I could source new and good parts but here is pretty painful to do. Once in a while I make an order overseas for specialized parts but for now I have to do whith what I can find aroubd here.
If I remember properly, Avago, or whatever is nowadays called, had a dual matched optocoupler for precisely this type of circuits.
As other posters have mentioned the CTR tracking of independent optocouplers will show significant differences depending on their bias point.
I couldn't find any locally, I should see what parts I can get and test again. The concept working with this is a nice start, and even to an useful degree I think, so I might build one or two and upgrade when a better solution appears. I should check for stability but trimming the offset in each use only takes a few seconds and I expect gain to be even more stable.
Also, one think I like to take in my projects are easy to get parts, if I can source them locally most likely anyone will so they can get a good use of my design. TL082 and 4N35 are jelly beans that can be found anywhere... If something useful comes from them seems great for me, this could help a lot of beginners not blowing their scope and getting much more comfortable with them.
Then I of course would like a better behaved version, with faster response and better stability.
The limiting factor for the speed seems to be the input side compensation, I should run some more tests to see how far I can improve this, the virtual ground makes a much better reaponse than just the ootocoupler, as there's no signal voltage at the outout device and that takes the BW from about 40kHz up to over 200kHz (simulated and real world confirmation) but at that frequency the input side compensation starts to be a problem, having a peak which gets compensated by the LPF of the output side to get a flatish response up to 230kHz. At 100kHz the output LPF dominates, and the response is slower but much smoother.
Having the optocoupler inside the feedback loop makes it tricky, as it's expected, let's see how far I can take it...
JS