The reserved characters are of special significance to the file system. Allowing these characters in filenames would have created numerous problems for the operating system, application developers, and users. In Unix almost all characters were allowed in filenames. That produced a lot of problems. Prohibiting the use of reserved characters is a small price to pay.
Designing an OS or application software requires making many decisions. Sometimes they are hard, Sometimes they are very hard. Sometimes no matter what the decision somebody will say it was a stupid one. You can't please everyone.