The reason behind it was to stop companies (e.g. amazon, apple and google) setting up shop in the lowest tax countries in the EU (luxembourg and ireland), and thus by only charging a low rate of VAT when exporting to the rest of the EU. This enables them to beat smaller domestic companies on final price, pay less tax overall, and funnels what little tax is collected into these tax havens. So the bigger EU countries were seeing a hefty fall in their direct VAT receipts, and loss of business from domestic companies to these giants that can relocate where they like, thus employment costs and indirect tax losses.
Fixing it by harmonizing VAT rates would require treaty changes and be politically hard to hand one of the big financial levers to the european central bank, especially given not all countries are in the eurozone - imagine the US forcing all state sales taxes to the same rate, set by the fed, and you get the idea.
Thus making companies pay VAT in the buyer's country, not the seller's. What they should have done though is put in a threshold, so companies/sole traders below a certain size were exempt, but that was opposed by some so it was dropped, and well, here we are where a mechanism intended to help small traders against the multinationals is a lot easier for the big boys to follow, particularly the requirements to keep id information about buyer location. Once they roll it out for physical goods too, it's going to be such a cluster f**k.
Hopefully though, the rise of MOSS compliant payment processors should make the system easier to follow - you just put a disclaimer up that final price will be based on the buyers VAT rate, and let the payment processor calculate the right rate and store the records.