How can I prevent players from cheating on their stats that carry between games?
Make it so that it doesn't matter if players have faked their profile.
Say having a high ranked profile means that you have access to better equipment (and therefore an incentive to produce a fake profile). You could reduce the impact of this by (say) introducing a handicap for high ranked players when playing against lower ranked players.
If there is a handicap system (or some similar mechanic) that balances the game, it doesn't matter for a casual game if one player has a faked profile, since neither player has an unfair advantage.
I'm also assuming casual games with unknown players would be the main problem, because:

If you repeatedly face the same opponent(s), you'll start to notice them doctoring their profile between games
If you're having a tournament, it probably makes sense for the tournament body to hold the profiles and check them between games.

As an aside, this also opens up your game to other demographics. For example,
on D&amp;D, there are players that would prefer to start at a high level with a bunch of equipment already. Also, if it doesn't matter if the profiles have been built &quot;correctly&quot; or not, then players can fabricate profiles to see how a different set of choices would play out.