My first post!
Sorry to bring back an old post from the dead, but I had the
exact same problem on my 1996 Camry XLE. Everytime I moved my passenger side sunvisor (with lighted vanity mirror) it would burn out the 20A "dome" fuse located under the hood. At first, I thought that the vanity mirror light had an electrical short but after a few days of experimenting and a dozen blown fuses, I finally found the root cause of the problem.
If you unattach the sun visor from the roof (simply unclip the plastic cover with a flathead screwdriver, then unscrew the two phillips head screws) and slowiy pull it down, you'll see the electrical connector harness for the visor, as well as a metal spring/hinge mechanism. In my car, due to the position of the two phillips head screw holes, when I moved the sun visor, the metal spring/hinge would make contact with the metal roof of the car. This metal-metal contact would cause a short circuit and blow the 20A fuse.
To fix this, I simply wrapped the exposed hinge with electrical tape. To be safe, I also wrapped the hinge with foam and zip-tied it so that there would be no more metal-metal contact between the hinge and the roof. Voila! No more blown dome fuses!