As @Amxx mentioned here, the delegation problem seems to stem from when Alice votes with her token(s), then trade them, then Bob tries to vote with those same tokens.
Wondering, could this just be avoided by not allowing tokens that have been voted with to be traded (until the respective proposal is over)?