You know, this is something I've been thinking about a bit lately. The elements are dull, but even with only the 4 basic elements (Fire, Water, Air, Earth) I think we can make things very interesting.
Here's my "Interesting Elements" design
The first step is to remove elemental weaknesses from the vast majority of enemies. General weaknesses and resistances work great for, say, Pokemon, but a typical RPG gets very boring by mindlessly casting "water" spells on "fire' enemies.
We can also add some significant variety to the elements, and battles overall, by giving each one a focus in addition to dealing damage.
One possible example:
Fire: Buff allies (increase damage, defense, haste, etc)
Air: Control (silence, stun, slow, confuse, etc.)
Earth: Debilitate enemies (lower resistance, dispel buffs, etc)
Without elemental resistances, something is needed to distinguish the elements. Give them a 'flavor'. However, this can lead a player to rely heavily on one or two types of spell, and completely ignore the others. So we have to come up with a system to counter that.
So, we give enemies a way to counter elements, and the intelligence to react to the party's strategy.(exploitable, of course) For example, a basic enemy, let's call it a "Flying Lizard," can cast two nullify spells, one for water, one for air. Very basic, and somewhat boring spells, but we might not want every battle to be a chess match. When these are cast, they nullify a set amount of spells (two or three) cast by anyone until they're expended. If the party only casts fire and earth, the Flying Lizard will not use nullify spells if he is accompanied by a friend who uses water or air. He may still use them at the beginning of the battle. These CAN be countered.
Much more interesting spells, such as absorb or block spells, can be added to force the player to make strategic tactical decisions. Block spells work similarly to nullify, but they are cast on one enemy (or friend) to block incoming attacks from that element for a set time. Absorb spells would absorb its primary element (a "Water Shield" spell could absorb water damage), reduce damage from its strength (it would cut Fire by 50%), but increase damage from its weakness. (in this case, Air) If the enemy notices lots of Air spells being cast, Air Shield would go up, if it is available to that enemy. That's where exploitation comes in: trick the enemy into putting up an Air Shield, just to slam it with Earth spells. More difficult encounters could pair absorption with nullify spells, throwing a wrench in this strategy. (but one that can be overcome)
So I guess to wrap my thoughts, I feel that even the basic elements can work, if you use them in a dynamic, reactive system that goes well beyond "cast spell X on enemy Y to win." There should not
be a "damage" type element that hits harder than the others, nor should there be an abundance of natural weaknesses to elements, there are other ways to add variety. AI is important, as you need enemies that can react and properly utilize strategies to force the player to think, rather than just grind.