In my view, it should be appreciated if your HR does not let an employee go easily.
I sympathise a lot with your situation. However I rarely see people being fired because of incompetency. Afterall it is the manager's responsibility to make your team up to the standard. Well, discipline is usually used as a reason to let people go. I would suggest you collect evidence of his disciplinary issues. You may start by investigating company's policies, and then set up measures etc. Also "attitude" usually falls into the grey area. Constant rudeness, agressiveness can be considered as a disciplinary issue.
It is a big headache if you have a direct report like this. good luck!