Forgetting curve using Duolingo data
I think the most important problem you are facing is that you are trying to fit a function that somewhat erratically flips between 0 and 1 as if it were a smooth function. My Mathematical intuition says that won't be numerically stable.

To create a more smooth function you could calculate a running average of your y data and plot it against the corresponding time data.
It should descend as you forget more over a longer period of time and should be easy to plot to demonstrate your intuition.

It has hysteresis/history since initial successes will be remembered. Your fit function would be the integral: 

$$\int_0^X e^{-x/a} dx = a - a\cdot e^{-X/a}$$ 

where $a$ will be the estimator of the forgetting rate.

Other problems could be in the time domain (just leave the unit of time at seconds), or you are mixing time scale/sample scale.

Both your expectation and reality plot should cover the complete time range on the x-axis to make them better comparable.
Maybe you should throw away data with exceptionally large time delta values anyway, as they are likely to disturb the calculations and the plots. The programs from your references remove data > 9 months and &lt; 45 minutes if I recall correctly.

Another domain problem that could interfere is that the data mixed words that are easy to remember and words that are difficult to remember, e.g. 'cat' is in many languages easier to remember than 'butterfly'  (though that could also average out over much measurement data).