I find Nathan's wallet ending up or still in friend B's car to be pretty concerning. I would think if Nathan was aware friend B was leaving, he would have grabbed his wallet out of his vehicle.
I also want to note that "I didn't take Nathan home" is quite different than "Nathan did not leave with me." Not that Friend B remembers anything.
Having seen plenty of drunken arguments amongst good friends, I've seen how quickly everything can go from buddy-buddy to throwing punches back to buddy-buddy. But I've also seen it enough times where it's just round and round all night. I wonder if the boys got into another argument after friend A went to bed?
The only way I can see this turning out friend B had nothing to do with Nathan's disappearance would be if they did get into another spat, Friend B left heated in his vehicle in a hurry, and Nathan stormed off somewhere and is just taking a breather, but it seems he would have returned to Friend A's camper after a bit if that had been the case.
How far was Nathan's hat from the water? I could see him taking it off to go swimming, but I can also see it getting thrown off in a fight.