You can't disable the automatic naming. Every entity must have a name. There are built-in rules for naming and/or detecting every entity (host/process group/service/... ), but you can override the rules with your custom ones. For services look here. For processes here. For hosts I think the only way is to change it manually.
There are also internal unique identifiers assigned to each entity such as HOST-2438848FF8E63836 , but you have no control how they are created.
Just curious - what's the use case for this?