Make a plugin work on specified domain only

You could use a combination of the file content and the domain to create a unique hash.

Example:

$md5 = md5( file_get_contents( __FILE__ ) . $_SERVER['HTTP_HOST'] );
if ( 'be5d38f32a5d4a897e6c878f0c2f1b14' !== $md5 )
    deactivate_plugins( plugin_basename( __FILE__ ) );

Additionally, you could check each week per remote request to your server, if the hash is registered for that domain.

But be aware, this can be changed very easily. There is just no way enforce a domain.