If it does not hold an idle when warmed up it is most assuredly the Idle Speed Control Motor(ISC). It is one of the most discussed items on this board. Here is a good link as to how to test and/or clean it.

ISC Link

As far as your other electrical problems, it sounds like you have a lot of them due to the "reverse jump"


'90 Montero XLS (Sold, sadly)
'95 Montero LS 160k
'03 Montero Limited 30k