Game Boy Advance SP White Screen

I am looking to this website to figure out how I can repair this Game Boy Advance SP that I have. I bought it at a yard sale a few years ago for ten dollars, and while I did not have any games for it, or even a charger I did turn it on and off a few times (I was a child at the moment) to watch the Game Boy logo turn on and off. Back then, I recall it being in full color every time. A few years have passed and since I have been getting into retro video games I decided to pick up a few game boy advance games, specifically I bought a copy of Metroid: Zero Mission for the game boy advance as well as a charger.

When I shut on the game, however for some reason the screen became white. I could hear the sound, but for some reason the screen was blank, until I looked closely. The game was playing properly, it’s just that there’s a problem with the visuals, making things look rather faded to the point where I had to tilt the upper part of the GBA SP to actually see what is going on. At one moment I was playing, and I believe I may have pressed down on a part of the game boy on accident (I think it was in the upper right corner of the lower half, but I’m not sure) because out of nowhere the colors sprung back and I could see everything as it is supposed to look at images of the game. This miracle, unfortunately, was not to last, as a few moments later it returned to the faded white screen, this would occasionally happen at random from time to time and I was always happy for it to happen, but it is always temporary.

A few months have gone by, and the white screen, and the problem has improved a little bit. The screen is not as faded anymore (I can actually tell what color Samus is) and I can even see a few backgrounds, but the fact that it is faded is still quite annoying. The instances where it goes to full color have been happening more frequently throughout my second playthrough of the game, even starting up in color to my delight, but it is still clear that there is something wrong with my Gameboy Advance SP. (I tried turning on the game with the cartridge outside of it, still had the same effect)

So can anyone help me or at least tell me what is going on with my Gameboy and how I can fix this?