I believe it is not your ECU. I had the same problem and some others have too. The problem is with the printed(flexible) circuit that is on the back of your instrument cluster. Those can fail after some time and you can choose either to replace it($$$) or try to fix it. I was able to trace and find a break in one of the circuits on mine. After fixing that, I didn't have shifting issues anymore(wouldn't shift out of first, felt like it was in neutral, reverse indicator lit when in park, etc). I would give this a shot to see if you can locate a break somewhere.
Here is a thread -
Transmission Issue???? - that shows the printed circuit on the back of the cluster - scroll for pics.
And in this thread -
2000 4Runner SES: P1780 - you can read in post #14 where christo_27 fixed his where it was broken.
Hope this helps.:bounce: