I'd say the best way to stop this is to put a block on a player re-joining an alliance for 2-3 days, you could even be mean and make it a week. However, there would be ways round this also, for example the amount of alliances which have 2nd alliances would make it unworkable, you could just leave get the bps then enter the 2nd alliance. Or a pacted alliance. Or you could make your own alliance and share a forum with the alliance you just left.
Other options is to stop them joining (or making) any alliance for 1-2 days after leaving an alliance. This would be unfair on anyone who wanted to change alliance for a genuine reason though. I think anything you do to fix this will just create more problems. Or hmm we could have a world with no alliances or shared forums and just battle it out everyone on everyone else
might be fun for a while I guess but there'd be no end game and the only ones left would be experienced players with no chance for new players to learn.
TBF I'd probably still play a world like that if only for a change of pace, would need to be a very short time-frame world though, which means lack of income for grepo and probably a headache to set up so I doubt it'd happen