What do you think about moving some custom token logic to a custodian contract?
The custodian contract would hold the tokens and protect from double voting issue.
The custom token would not be necessary at all. The custodian contract could work with any ERC-20 compatible token.