Chi fa hosting compra domini dal nic (se è mantainer) o da altri fornitori.
Poi mi sembra che tu abbia frainteso il concetto di server: non è che per ogni sito ti serve un server. Tu hai un server su cui puoi mettere alcune centinaia di siti (il numero massimo teorico non esiste, ovviamente dipende dalla potenza del server, dai servizi che vuoi offrire).
Il vero costo per l'operazione è la banda. Se vuoi che i siti non vadano piamissimo certo non li puoi mettere sull'ADSL di casa (anche se hai fastweb): servono delle linee CDN possibilmente mixate su più operatori per avere maggiori garanzie di funzionamento.
Poi la storia si complica ancora con la locazione geografica dei server ed il numero di HOP per raggiungerli, con i firewall ed i router, i gruppi di continuità ed i gruppi elettrogeni, con i sistemi di climatizzazione, i backup, ...
Dunque riassumendo: se vuoi metterti un server in casa con il tuo sito è sufficiente avere un'ADSL con IP statico, installare un webserver con supporto MySQL+PHP, acquistare un dominio, girare i DNS sul tuo IP statico ed il gioci è fatto.
Se invece vuoi offrire servizi devi investire un po' o appoggiarti a qualcuno che abbia i mezzi per servire servizi all'altezza delle aspettative dei tuoi clienti... (infine c'è il problema della fatturazione )