You have copyright in the code you write automatically, from the moment you write it (you don't specify a jurisdiction, but this is true pretty much everywhere). Copyright notices are placed to put any reader on notice of this fact, and to provide them with information about who owns the copyright.
Once you have written the code you can allow others to copy and use it by providing them with a license, meaning a set of permissions that you choose to give them. As long as it is clear what is being licensed and under what terms there is no problem.
The practice of putting a copyright header (not license terms) at the top of every file emerged as standard practice some decades ago. It doesn't have any particular legal rationale; it is simply a reasonable compromise between space and notification. Putting a comment saying "This file is part of the Foobar Library © Joe Bloggs 2017" also helps to clearly define what files the license covers (along with other things such as grouping under a common folder and distribution as a single zip file). The question of whether a particular file is part of the licensed work is a matter of fact, not law.
If a dispute of licensing and copyright gets that far, a court will take notice of standard industry practice and expect that the parties will be aware of it. So since a file called "LICENSE" in the top level of the project directory is standard practice for licensing terms, that would be considered to have put any recipients on notice of the terms of the license. Putting a reference to the file in the header comment is so simple and cheap that its probably a good idea, but failing to do so probably wouldn't affect a court case.
So in conclusion you are correct: copying the entire license text to the top of every source file is pointless; it gets you nothing that usual practice would not do.
(Personal anecdote: back in the 80s my employer sent a lawyer round to explain to us the importance of putting the actual © symbol in our source code: the "(c)" convention apparently didn't cut it. In vain did we explain that ASCII didn't include a copyright symbol so he was asking the impossible. His attitude was that he had done his job in explaining the law, and now it was our job to sort out the technical details.)