I think this is a deliberate play on the company's part, as it's a way to compartmentalize candidates according to their negotiation skills. Full time jobs are essentially for people who are poor at negotiation and at figuring out what options are available, and the company gets to have them at the fraction of their value. For smarter people, the company bites the bullet and takes them in as consultants, with much higher pay. This way, the official wages for full-time employees get to stay low and you can always say to a gullible candidate that the maximum salary for the position is so and so.
This is all about Western Europe and about huge, bureucratic and successful corporations that have more money that sense (banks etc.). I don't think it applies to smaller companies which are not swimming in money.