I believe that there are two main types of cheating, deliberate and unintentional.
When you have a player who is cheating deliberately, there is little you can do to combat it, save not playing with them again if you catch them doing it. Games rely mostly on trust to function, and anyone who abuses the trust doesn’t deserve to play.
Unintentional cheating is a harder problem to deal with, but there are strategies we can use as games designers to mitigate are reduce its effects. Unintentional cheating occurs when a player accidentally breaks the rules of the game, either because they have forgotten them, are employing them incorrectly, or have never learnt them in the first place.
You can reduce the occurrence of this type of cheating by writing good and appropriate rules for your game, and laying them out sensibly and well. Examples aid learning, as do diagrams, use them liberally. Excessively complex or wordy rules will tend to be misinterpreted on even totally unread. Always work to cut out the unnecessary words, and consider adding summaries at the top of complex sections of the rules.
If there are optional or advanced rules for a game, add them to a separate part of the rule book, and include an obvious mechanism to declare the use of any such rules, ensure that all of your players have maximum opportunity to be singing from the same hymn sheet.
Keep all related rules together, don’t scatter rules about a single section of the game throughout the rules text. If you have to do this, provide summaries, examples and an index.
Include a FAQ section to explain the complex parts of rules that people have issue with. Make sure this is an actual list of Frequently Asked Questions, as opposed question you think people may ask frequently. Maintain this list on your website, and consider distributing new sets of rules including errata to reduce the length of the FAQ.
If you make your rules as simple and easy to understand as possible, and allow them to evolve with feedback, you should reduce the unintentional cheating to a minimum, and also make it easier for people to catch the deliberate cheats, a good result all round.