Why are there so many different churches?
The first answer to this is that different people enjoy worshipping God in different ways. If there are sufficient Christians in a town for there to be two different churches it isn't unreasonable for there to be two different styles of worship - even if it is just because of different musical tastes! Of course there are genuine differences of opinion among Christians on all sorts of matters - and it isn't necessarily wrong that that leads to different ways of being a visible church.
Sometimes a group of Christians decides that they disagree with others over matters that they regard as fundamental. They may then decide that the only way they can effectively serve God is by forming new organisation or local church.
Churches and Christian organisations do in fact work together more than you might think. For example Crosslinks works with many partner organisations around the world. The Evangelical Alliance is an organisation that links many churches, organisations and individuals
Having said all that, there have been, and still are, many cases where churches split over things that are not, perhaps, important in God's eyes. Where that happens it is very sad and often leads to God's people as a whole being less effective. The trouble is that Christians are a "work in progress" - God is working on us, but we're all very far from being perfect.