There is no way to prevent the free distribution of your theme. You could make it harder by selling a copy that is restricted to a license key and a salted hash of the domain. But even if you put the code for this in a pre-compiled script it will be possible to get around it.
Sell support, upgrades and reliability, not the naked code.
For the license: PHP code which is uses WordPress functions and hooks is GPL per default by some peoples interpretation.
For your stylesheets, images and standalone PHP code you can use a different license.