Nano was designed to support editing shell scripts amongst others and many shells require an extra line feed as the final line to make sure that they don't hit issues like this.
Perhaps another change is needed to the file-in node to allow for an empty final line?
But in actual fact you will still have a net gain of one extra because of the -L
The thing that really annoyed me was that when Nano reads/writes files and shows the number of lines, it doesn't count that faux line that gets created.