TL;DR:
Contact support.
Longer…
After both importing and authorizing your key in cPanel, you try to connect by using the username found in the top-right of cPanel:
# ssh -2222 username@domain.tld
Shell access is not enabled on your account!
If you need shell access please contact support.
Connection to closed.
So you double and triple check the Bluehost docs, trying to see what you might have missed. Is there another setting you have to flip for this to work?
Yes, there is another setting that needs to be changed in order to enable SSH; but no, you cannot switch that yourself. At least, this is what was told to me by the chat support agent I contacted.
Contact chat support. They should be able to assist – they may require security validation, which typically goes to the account holder’s email, but they were able to authenticate me with a code retrieved while logged in to the Bluehost admin account.