With the way my keybinds are set up, I usually have plenty of space to work with.
Starting with the ~ key, I bind ~, 1, 2, 3, 4, 5.
I unbind Q, E from their original and use them as abilities. W is still forward. Also bind R, T, and TAB.
F, G are bound to abilites. A, S, D - A and D are my left and right strafe, S is to back (usually tanking purposes).
Below that Z, X, C are bound. Sometimes V depending on the class.
So in total I have ~, 1, 2, 3, 4, 5, Q, E, R, T, F, G, Z, X, C as well as the TAB button bound to abilities. They are all in reach of SHIFT, ALT, and CTRL for modifiers. Using something like that should give you plenty of binds (Like... 30-40+ binds). Keep in mind you can do things like ALT + SHIFT + ABILITY for even more customization.
I tend to keep ALT bound to "auto-selfcast" for all of my characters (I play a lot of healers
), but that still leaves SHIFT and CTRL for me to work with.
Hope my wall of text helps you out!