Given what is in the config that you posted I would guess that the most likely issue is whether you have generated RSA encryption keys which are required for SSH to work. Did you generate RSA encryption keys?
As I understand it: having a domain name configured is required to be able to generate the RSA keys. And having RSA keys generated is required to access the router through SSH. So indirectly it is correct that you can not access the router via SSH without a domain name configured.
My experience to date: You need a hostname and a domain name configured in order to generate RSA keys. Once you generate the RSA keys, you need to "copy run start" to keep them over a reboot. Once they are saved, you can change/delete hostname and domain name to your hearts content. Some of this behavior is probably IOS release or platform specific, so YMMV.
My experience is different from Vince. I am not sure that copy run start is needed - though it certainly does not hurt. And in my experience if you change the host name then it invalidates the RSA keys and you need to re-generate the RSA keys.
As I said in my original response, your mileage may vary. On the last systems I tested (1811s running 12.4(15)XY5) changing the hostname in the config had no impact on ssh accessibility while failure to save the first key generated with a "copy run start" did. I recall working on other devices which had a separate command to save the keys. Whether or not it should is a separate issue, as anyone who deals with routers knows. (In theory there is no difference between theory and practice, however, in practice, there is.)
We are pleased to announce availability of Beta software for 16.6.3. 16.6.3 will be the second rebuild on the 16.6 release train targeted towards Catalyst 9500/9400/9300/3850/3650 switching platforms. We are looking for early feedback from custome...