Welcome. Have you checked the variable Resistors in the mirrors? They get used as position 'sensors' and if they are gunked up or have gone bad they would report all kinds of erratic data for the actual position of them causing all manner of weird issues like that as well.
https://xoutpost.com/bmw-sav-forums/...d-writeup.html