I want my elf character to be able to choose the "enslave the dwarves" dialogue option and my dwarf to "free the dwarves" and see what happens and maybe they end up fighting each other.
It seems to me that multiplayer would be a perfect fit, because all player characters are equally "the chosen one" and they all equally can be the winner, and they have quests with competing objectives.
If you are unable or unwilling to play in multi-player, though, then what you want... that's not really possible to do in single-player. You are controlling one or the other and you will choose the winner. At best you flip a coin and decide who wins.
The only way I could think of a way for that to happen at all would before someone to invent some absurdly powerful AI which could control a player character and navigate them through quests all on their own, and even if one existed, adjusting it to make it challenging without losing the freedom the game gives you would be very difficult. A smart AI would bee-line for quest completion while players are busy rummaging in barrels and talking to NPC's. I can think of no easy way to get the AI to dawdle just long enough to be a competitor without being a guaranteed winner.
This is very simple gameplay, nothing complicated or difficult about it.
So can I assume that you've written up some source code or even pseudocode which can handle it?