Confederation speeds up the snowballing and steamrolling in this game which is already a huge problem on its own, but what if confederating factions only guaranteed you the core regions of whatever faction you absorb? So let's say you're Malekith and want to take over Har Ganeth, who have expanded to the eastern tip of Naggarond. You confederate them but only Har Ganeth's core province is guaranteed to join your empire, the former lands of the other two factions have a 33% chance (75% if the former lands were from another race) of breaking away and declaring independence. You then get the choice of pressing your claim and be immediately at war with them or leave them be which restores the former factions and gives you a small diplomacy boost.
And yes, that should go for the AI too.