I have a multisite (sub directory style), and am wondering if i can delete the default site (sites/default)? I just want to get a 404 if the site doesn't exist, no fallback.
You can leave the default directory in place. Just make sure there is no settings.php file in the default directory, and only the sites/www.yoursite.com directories will be accessed.
When you upgrade core, the default directory will always be replaced and will receive a new copy of default.settings.php, so it makes no sense to delete it.