Controlling higher voltage and load via high-side switch from a microcontroller
Yeah, I think Option 2 is your simplest high-side option. Replace Q1 with a BSS138, and you can have a simple all MOSFET solution with discrete parts.

Alternately, if you're OK buying ICs, you can use an IC like the TPS2557 (which is an N-channel load switch with built-in charge pump), or an integrated dual N/P part like the Si3865DDV which basically squeezes the option 2 circuit into a convenient package. These would also take up less space than the discrete solution, and offer some protection features such as current-limiting if you would like. I can also understand the appeal of building something with parts you have lying around.

A N-channel device will have a lower on-resistance than a comparable P-channel device, but it does require a charge pump as you stated.

Finally, even with a MOSFET solution, I would personally keep R2 there and make it 1k or so, in addition to adding a pull-down to your UC enable pin so that when you are in reset, the LEDs stay off. By keeping R2, if you drop a screwdriver or something across the gate of the MOSFET to GND, it limits the current that can flow from the uC pin.

Here's the discrete solution:







simulate this circuit &ndash; Schematic created using CircuitLab