If the cost of the transfer actually was determined in a competitive environment I'm sure it would be considerably lower. Unfortunately on such fees it's not in the banking industries interest to act competitively with one another.
I didn't say that. Intelligent actors tend to avoid any real competition. The price is what enough clients are willing to pay to make the whole scheme profitable. There doesn't need to be any fairness for this to happen.
This is monopolistic, anti-competitive and wrong, and the less wealthy sections of the population suffer the most (as per usual).