1. The Arduino contains an LDO (low-dropout regulator), which is a kind of linear regulator. This LDO is what accepts 7-12V in, and produces 5V output. Yes, AtMega328P is 5V maximum (strictly 5.5V,
look at the datasheet, but you want to keep to 5V max to have some leeway).
2. You can buy logic-level MOSFETs (
example) that will switch reliably with gate voltages of only 5V, which remove the need for a separate voltage rail for the gate driver. However, requiring separate 5V and 15V rails is no problem. Just use
a regulator to convert 100V to 5V, and
another regulator to convert 100V to 15V. That's all there is to it!
3. Making a voltage divider out of resistors is worse than using an LDO in every way.
An LDO converting 100V to 5V will have a 95V drop across it. If you're drawing 7mA, that's a fairly hefty 700mW dissipation, and means that the conversion is at best only 5% efficient. Buck converters may be more efficient, but as you've identified, will be bulkier. This is a tradeoff that you have to choose. Zener diodes and resistor dividers will be even less efficient than an LDO, so will waste even more power.
The oscillator inside an AtMega is not very accurate -- not good enough to reliably run the UART, or USB peripherals (if using a chip with USB), and timing accuracy will be poor as well, etc. However, if you're not using any of those things, or don't care about timing accuracy, etc, then the internal oscillator is just fine. A PWM controller for a LED strip is a prime example of something for which the internal oscillator is perfectly useable (unless the device is controlled via UART or USB), and thus an external oscillator is probably not required.
Don't forget to include decoupling capacitors in your design, they are conspicuously absent from your design. Also, you need to provide a way to program your microcontroller.