Why do some things need to go in a theme's directory instead of /public or normal one?

Here you are not alone with HUGO. You have added a Theme.

Most themes also have some conceptional stuff that may make things different as in un-themed Hugo.

You will have to learn about the theme concepts and usage - Hopefully some are provided by the author.

and check out my reading suggestions here: