Turn /node off but keep aliases
I'm guessing you're on drupal 7? 

Rather than trying to disable/show a 404 you could install this module:
https://www.drupal.org/project/globalredirect

That will make it so that if anyone tries to access one of the "node/*" urls they will be automatically be redirected to the proper alias of the page. Would that work for what you need?