There are a lot of points in your post to digest, so I will do so as accurately as possible, apologies if I miss something.
Being a customer service professional is truly a profession, not a job. A customer service professional should never take it personally. Unlike for example, socialising at a dinner party, these people are not here to be your friend. They are often frustrated, scared, in pain and suffering. The number one rule in customer service is to remember that the customer is angry with the situation, not you. It's your role to acknowledge the customer's frustrations, rise above them an apologise. Then, you have to seek to find a resolution for the customer.
There are things that you mention in your post, such as the spitting, physical abuse/threats that are not acceptable and you are absolutely within your rights to refuse to serve someone who demonstrates such behaviour.
I also appreciate that you're not happy with the salary and do agree that you should be paid above living wage, considering the confidentially training that you must undergo.
It sounds as though you take a pro-active approach to your role and it's great that you look things up on the internet for customers, your Practice Manager should be pleased with your efforts.
However, not all surgeries are as customer-friendly as yours. Some try in vain for weeks to gain appointments, flawed by silly booking systems, then there is the fact that the doctor nearly always runs late in calling you in. You may have a difficult job but so do many of your customers, someone could have been out in the baking sun all day, mixing concrete or laying bricks, or working in the army, fighting for the country, they have a right to adequate health care.
I suppose the crooks of the point is that it's not something to take personally if a customer is rude. The professional customer service agent should rise above rudeness. I've dealt with rudeness and abuse, even threats and I always shrugged it off like water off a duck's back, remembering I am the professional.