The first reason would be because hiring a web developer or designer is going to consume far more time than getting website templates. Think about it, you have to explain to the web developer exactly what you want. You have to go over it with them again and again and again. You will have to monitor what is being created and make adjustments during the project. Once the project is finished it is probably going to be behind schedule, and adjustments will need to be made that might cost you more money and more time.
When you hire a professional web developer to make a website for you, it is also going to cost way more money. There are low-priced developers, and then there are high-priced developers. But no matter what you are going to end up paying way more than what you expect. Each one comes with pros and cons. Low-priced website designers are not going to be that experienced, but that is why their prices are going to be so low. This does not mean that they do not have the skills; they just are not proven enough yet to warrant a high price.