You can have the domain and the hosting separately. It is even recommended, especially when you have to change hosting for some reason.
To configure it you need two simple steps:
Step 1: In the hosting
You have to find out in the hosting (GoDaddy) in your case, which are the name servers .
It usually appears in the% c_c% section of cPanel. Or you can ask for technical support.
You can check this link , where they indicate the name servers, depending on what you have contracted with them.
This image is from Bluehost, but it can serve as an orientation:
Step 2: in the domain registrar
You have to indicate that your domain points to GoDaddy, by putting the name servers obtained in step 1.
There must be an option to put custom server names. Surely the name servers of the registrar will be there. You must delete those and put those of GoDaddy.
This image is from my recorder, but it can still give you an idea:
As to whether you can separate the domain and the hosting from the same provider, I do not see the possibility of doing it or what it would have, unless the provider has a company that manages the hosting and on the other hand another company that manages the domains. Even so they would be separated ...