How can a fully encrypted homomorphic program resist copying? Let's say that we have an original homomorphically encrypted program with any possible code inside. What methods can it use to ensure that it is impossible to create an exact copy of it? Are there such ways?

I understand that a person without a key will not see the internal content of a homomorphically encrypted program, I'm interested in whether it is possible to limit the exact copying of this program entirely
That sounds impossible: your homomorphically encrypted program is just a program itself, and the fact that it runs some FHE does not matter with respect to the question of whether it can be copied.

A user with direct access to the program can always copy it, whatever you do (e.g. he could always take photos of the source code with his smartphone if he wanted).

If you want to make it truly impossible to copy, you need to run it in a secure environment (and as such a program will be likely very lengthy, that would most likely correspond to running it on a trusted machine to which the user is only given some input-output access).