I don't think it's fair that people can make money from having 'perfect' knowledge of the market. I don't buy into the efficient market hypothesis.
I can point out many significant inefficiencies in the system - E.g. Nepotism (allocating employee rank and pay based on social connections instead of skills/results), executive bonus structures which favor short-term gains over long-term gains, monopolies which make companies complacent and employees less productive, other anti-competitive behaviours - These factors allow large, inefficient companies to beat competitors in the market in spite of significant internal inefficiencies.
Anti-competitive behaviour will probably always exist in the markets; it's part of human nature and it's basically universally accepted except in the most extreme cases (E.g. antitrust cases).
Maybe if humans become smarter and more psychopathic (like in the novel 'Atlas Shrugged'), then we could have an efficient market, but right now, I think it's very far from efficient.
Maybe it's efficient on a human psychological level (from the perspective of an average trader/investor) in that there is some sort of universal consensus about the value of everything. The problem is that this consensus is not rooted in reality but on a superficial, socially-constructed representation of it - That means it's not necessarily efficient in terms of maximizing the output of companies and the happiness of their customers.