Discuss and work things out with the employee instead of firing them. Odds are good that the employee has a different story to tell. In situations like these, it is the employer that is at fault about 50% of the time.
It was noted in a comment:
they're more than happy to work on the improvements, but if something needs to be done on the current iteration they try to ignore it and/or pass the work off to anyone they can
This makes no sense to me. If the employee has a particular working style, maybe try to work with him in this style. What is the meaning of something needing to be done on the current iteration? Are you as the employer routinely disrupting his work? The role of the employer is to prioritize the backlog, subject to dependency constraints. If the employee is refusing specific work, remindoffer clarity about the work and try to understand the basis for the refusal. Remind him of his obligation as per the job's original description, and optionally offer a small raise for compliance.
It was also noted:
Harassment is one of the reasons. They also regularly make unprofessional and inflammatory comments.
Again, this can be highly subjective unless it is a serious open-and-shut case. If it were serious, the employee would have been terminated already, which leads to think that it isn't. Sometimes, employees can need coaching. It should help to sit down with them, bring up exact examples, and encourage the employee to adjust. Multiple coaching sessions over time can be necessary. Offer a bonus for behavioral adjustments. Love is the way.