Here's a big question! In my company, we have blocks of flight numbers, odds outbound and evens inbound. Unfortunately, this leads to lots of opportunities with callsign confusion having the 1808, 1008, 1508 etc. in the same piece of air at the same time. So to get round the confusion, we have introduced random two digit plus one alpha callsigns which are different from the flight numbers. This is helps but unfortunately, this device cannot be used with the three figured numbers used for long haul. Apparently, the international ATC system can't use these for overflight permissions as many third world countries can't handle the alpha element of the callsign.
But to cut the answer short, they are generally creations of the logic of marketing departments, therefore company controlled. Then, when safety gets to be an issue (like callsign confusion), the Operations (ATM) departments of the company produce a "fix".
PM