First, what happens if you take the card out and let the player refresh its database upon restarting? Do the ‘missing’ song listings return?
Second, do you know that there are 2 USB connection modes, MTP & MSC? And that your computer can’t see what was loaded to the player while connected in the other mode? Go into Settings > System Settings > USB mode and switch it to MSC mode. Now re-connect and see if you can see those ‘missing’ tracks. If not, disconnect and try MTP.
Of course, it might just be a database refreshing error. While your player is in MSC mode, connect and look for a file (in Windows Explorer) called MTABLE.SYS. This is the database file. Delete it. Don’t worry, your player will build an entirely new database upon disconnecting instead of merely refreshing the existing one. This may uncover those tracks playing hide-and-seek.
Thirdly, I’m concerned when you say “There is no way he can ever replace the 1200 plus songs that have been put on there.” Have you (or he) ever heard the term Back-Up? And I’m not talking about putting it in reverse. Tell your brother-in-law to do himself a favor once you/he get this sorted out and do it!