A (somewhat inelegant) way to solve the problem of players leaking information you don't want them to leak is to specify something like:
"You're not allowed to share this information in the thread, not even hint about it. If anyone manages to guess this information and I so much as suspects that something you said is the cause of it, you will be modkilled and lose the game regardless of your other win conditions. This is your one and only warning."
Much less fun than giving anyone a post restriction, but also less likely to be frustrating and more likely to accomplish the goal (not spreading the information).
As for post restrictions, I don't think it's possible to make a PR a) lenient enough that the player be able to play the game in a meaningful way and still b) harsh enough that the player can't communicate something you don't want him/her to communicate.
If I were to make a role with knowledge of the setup, I'd probably want to make sure there's some incentive for him/her to stay alive so he/she wouldn't just blurt it out at start of day one. Either by making him/her a survivor or to leak the information one bit at a time (but without making the role a normal role cop.) This gave me an idea about a role, I'm gonna go post it in the Best Roles thread, see if it's been done already.