I am an undergraduate student and earn money by giving private lessons as well as by writing and translating texts, and recently I lost a potential customer because we couldn't agree on the price. The case is a bit too complex to describe here, and I also don't really want to reveal some details on the Internet, but, in short, the culprit was that there was a huge gap between his BATNA (Best Alternative to a Negotiated Agreement) and my BATNA. The job he wanted me to do was pretty unusual and highly specialized, and he knew me personally and knew that I happened to have the rare knowledge and skills to do that particular job, so he offered me that job and offered paying me somewhat more than the rate I usually earn money at. He knew that rate. But I knew that if he failed to reach an agreement with me, he would have a hard time looking for specialists capable of doing the job, and end up paying at a rate at least a few times higher than what he offered me. So I made a counteroffer, in which I frankly told him how I saw our BATNAs, and offered a price at the midpoint between our BATNAs to make our benefits equal. He rejected the very idea of bringing his BATNA into the equation, and then we spent a lot of time and effort trying to persuade each other as to whose offer is fair, with him even comparing me to a shopkeeper who tells different customers different prices, and eventually broke the negotiations altogether.
I don't really regret rejecting his offer, because I didn't lose much with respect to what I can earn otherwise by spending the same amount of time or effort, and I would definitely hate doing a job knowing I'm being taken advantage of, but I regret that we were unable to reach a fair deal and missed such an opportunity for a great mutual benefit. He rejected my offer because he didn't want to lose face by accepting what he believed was unfair, even despite my offer being actually much better than what he could get elsewhere.
I am at a loss as to what I should learn from that experience, and I'm especially curious because I know I will face many negotiations in my future professional career - salary negotiations, price negotiations, etc. - and I guess some of them will be, likewise, with a large gap between the BATNAs, so I'm posting my question here in order to learn how to professionally deal with such situations. For instance, what if I have unique knowledge and skills of great value for a particular employer, and that employer offers me a salary just slightly above what I can get elsewhere, and much below what he will have to pay to employ someone else?
So my question is: In general, how should I negotiate the price/salary with a potential customer/employer if there's a large gap between our BATNAs and we both know them? Are there any established theories or practical methods about that? In particular, what is the fair price/salary is such a situation, and how do I convince my negotiation partner to accept it?