I do not see a straightforward solution here, as ThoriumBR mentioned,
you can add an external lib to the product, made in C/C++. Python can
import those just fine. Add a couple vital functions on that library,
and change the library a little for each client.
The idea to use these external libraries for encryption I do like. A system similar to that used by intelligence agencies involves having all classified files encrypted at rest, and when requested by an employee, the file is decrypted and issued to them. This method will ensure logs can be kept for each request, and who requested a decrypted version. Although, for that environment, air-gapped networks are used, and employees are not allowed to remove material from the workplace.
I do have concerns over this, as while programming, programmers are using the source code, which might as well be equivalent to plaintext. So signing the code would not make a difference, as it would only serve to slow down the leaker if they did not want to be found afterward. So, taking measures to ensure full working code cannot be dumped on the Internet, like using external libraries which the programmers never have direct access to might actually be more ideal.