Building a fully fetched diplomacy mechanic is a huge task. To make the current system logical within existing mechanics suggest the following simple solution: Have Alliance cost Influence each Turn
The cost can be both:
1. Flat rate cost that would upset any influence income generated from the specif empire (due to research/trade treaties and embassy)
2. Dynamic depending on the relative population of AI to player population but with a minimum of the above
The logic behind this is the following:
1. The way to win (currently) is to control enough amount of population on the map either directly or indirectly via alliances
2. An AI can be bought into an Alliance with Influence but if it has a larger population then the player, will not vote for the player: This is already in game and is perfect! Now for the change:
3. An AI needs to be kept in Alliance with a steady cost of Influence. If the player cannot afford to keep the AI in the influence, it should automatically leave the alliance and receive a negative relationship bonus towards everyone in the alliance due to the breakup and to give war a big chance. Now if the cost is calculated dynamically, the AI with the largest cost (hence largest population) should always leave first making them perfect candidates for having war with
Additionally I suggest having the player always vote for themselves as they are the player playing to win. The decision on the council election screen should be if the player wants to "buy" alliance from anyone with Influence before the vote beings
This would provide a meaningful decision and a sort of minigame that the AI could also be tough to use with relative ease, and once it does it is already using alliances in game in a meaningful manner
Also: with each council vote the player could loose the game if other empires band together due to the mechanic which would give it quite a kick
EDIT: This system would also make it impossible to simply buy out all the AIs with Influence as for each alliance, several other factions are needed with whom the player is not allied with and generate influence from (That is why upkeep of even the cheapest ally needs to be higher then the influence generated from any other trading partner)