To begin with, "would you recommend" is not really a valid question here. I dont think there is an alternate authority who can give us passports. However, despite the bad attitude and hardships, I would suggest that you approach an RPO directly rather than through agents.
Here is how I went about doing it and it worked for me a few times.
1) Get an online token for the next day. Get this first thing in the morning so that you get toke numbers within 30. Beyond this the waiting time becomes a bit unpredictable.
2) Depending on new/renew passport or change request, fill out form 1 or 2 found here
3) Go through the checklist and make sure you have everything in place. Make sure you have originals for everthing. For address proof, try to carry a letter from bank or gas/landline bill if available. Multiple proofs wont harm (as a backup).
4) Get to the passport office around 9am and get your application verified by one of the agents (looks like authorized ones) in there towards the tea shop. The charge of Rs. 20 is worth it as they verify and remove unnecessary things and advises with any extras required.
5) Get in by 9.30 and wait for your turn.
Thats it if you are lucky! :) If you are getting into trouble with the staff, keep this in mind. From what I have seen, you have a 70% probability to have some sort of argument with the staff there.
What I have observed is that counter staff are arrogant and officers are more understanding in nature. If the shouting at you is general abuse-for-pleasure, choose to ignore. If they are denying to accept the application for some reason, calmly try to reason with them. If that too fails, you can meet the APO on the first floor. The person currently there is a considerate and gentle lady.
Points to remember
Shouting doesnt help
Logic doesnt help. If your first two sentences didnt solve a problem, the next 10 is not going to. Dont waste your time arguing.
Have a print-out of checklist based on which you have verified your application. You may need to show this to the officer to ensure what you have is acceptable. For whatever reason, most of the people there have no clue what is on their website. Thats it. If the above account seemed a bit cynical and detached, that is exactly how they made me feel. Apologies for filling you with pessimism if I did, but what I wanted to do is impart cautious optimism.