I have the same default setup for both Tank + Healer roles:

Numpad 1-8 targets party members, Numpad 9 targets pet.
The various Numpad keys around those ones (/*-+0.) are heals and buffs and other stuff that I want to cast on those teammates (6 abilities total)
Holding Control or Shift or Alt gives me other sets of stuff to cast on those teammates (4 x 6 = 24 abilities total or two full hotbars)

The standard numeric keys and function keys along the top of the keyboard are also affected by Shift/Control/Alt modifiers (for another 8 hotbars total!) so I've access to all ten hotbars worth of stuff directly from the keyboard.

Target swapping can seem a little iffy if you're not using mouseover macros for everything, but the /targetlastenemy command (bound to an easy-to-hit key such as "Pause") is your friend
If I'm targetting an enemy to DoT it up, and suddenly want to heal player 2 I'll hit (Numpad2) (Numpad0) (Pause) - it's practically instantaneous to target the player and queue the heal, and I've already switched back to the enemy again by the time the cast bar appears.

For more raidy stuff, I just set the Main tank as the Focus target and use [Heal Focus target] macros
(e.g. If Numpad0 is my usual Heal, I'll bind this so it triggers a Focus Target Heal when I hold Control and Press Numpad0).