Long story short, the guy was making stupid technical decisions (some of which were incredibly harmful to the project), he was unable to complete his tasks within a reasonable timespan, he was dictatorial and argumentative with other developers despite lacking technical expertise and a plethora of other issues. A few developers got together, went to his boss, told him about the situation (basically what I wrote above, though in a more tactful way), managed to convince the boss that the guy is a major liability and a risk to the project and succeeded in removing him from the project. The project is now successful once again.
It was an incredibly risky move in my opinion but it succeeded because the devs were organized, disciplined and tactful and presented their case to the higher ups in a rational and reasonable manner. If you're dealing with a situation like this, it helps to stay calm and try to not come off as a moaner/potential power grabber or something worse. It's risky but it can be done.