We game, therefore we spy - it's a fact of life.
All you can do about spies is keep your plans off chat as much as possible, and don't broadcast strategy. Troop numbers, especially of Beacon/Fortress defense should be kept off chat at all times. Anything you don't want to share with the server should be done by email or off game communication such as Teamspeak or Skype. Even then you're not safe, you've just limited the risk.
It isn't always the people on chat who are spies unfortunately, but keep note of who is on chat when plans are shared, and what happened when you actually ran the operation. Sometimes you can tell who isn't committed to the league and watch what they do, such as not sending defense when they were asked to, but otherwise it's nearly impossible to detect a spy. A lot of people have alts in other leagues, and there isn't much you can do about it if they want to pass information.
It's not just spies you need to worry about though, its also disgruntled players in your own league. I've seen screenshots of a lot of league's beacon and fortress defenses and can only hope that my leagues information isn't also making the rounds.
Hopefully you can get Captains and Commanders you can trust. The main thing is don't promote everyone in the league to a rank that can see all the league statistics and beacon defense numbers. Holding an officer's position in a league is a matter of responsibility - one of which is keeping the league secure. Unfortunately, until Plarium allows a Marshall to control who can see the league statistics by player, not rank, you'll either have to limit promotions, or you'll just have to cross your fingers and hope your information isn't used against you.