Запретить выкладывать. Запретить использование без оплаты. Судиться со всеми нарушителями. Только это уже EULA получается, здесь такие гадости не очень любят обсуждать :)
Кстати, чем не нравится свободная лицензия и платная поддержка продукта?
Как уже выше написали, байткод легко восстанавливается в исходник, а из py2exe не очень сложно выковыривается байткод. Единственный способ - компилировать в настоящий бинарник.
В сети есть платный сервис, который это делает, на ЛОРе кто-то постил, что свой аналог разрабатывает. Ну или сами ceval.c попробуйте расковырять.
Еще, помнится, был проект, который некоторые не особо динамичные программы переводил в Си (гугл знает).