There are a couple things to consider here. First, is this primarily a gaming machine for your son or a movie watching machine for the family? If the former, does he play online with his friends a lot? If so, stick with the same platform that his friends are on (if they're all on Xbox - get the Xbox!). Does he play a lot of single player games? The PS4 might be the better option in that case because it has better exclusives. Does he stick with one game frequently or does he like to switch it up? Xbox has Game Pass Ultimate for $15/month (but is always available cheaper with promos) and that gives you the ability to play online and also gives you access to a Netflix-like service for games.
Besides the gaming factor, both systems should be fine with the external drive. You might have to reformat the drive first in order for the console to be able to read files though - Xbox supports NTFS, FAT, and FAT32 while PS4 doesn't support NTFS. Like you said, the Xbox has the port in the back which is better for cable management. Another thing to consider is that the Xbox One S can play UHD Blu-Rays while the PS4 cannot, if you decide to go with physical media. As far as I'm aware, neither system should give you any issues in outputting 5.1 audio, but the Xbox One S does have Atmos streaming capabilities should you upgrade your sound system in the future.
I think the easiest solution would be to hook up the external drive to a computer, set up a Plex server, and pick whichever console is cheaper/better suited for your son's gaming needs. Both consoles have a Plex app, but I've experienced a lot of buffering using the consoles' apps. Just pick up a Fire Stick or something similar for your movies if you go that route.