Because more sponsors and TV revenue comes in because of the bigger teams being present, companies are not really looking to be associated with Toro Rosso when Ferrari and Mercedes are on the scene. Its the same for so many sports, the bigger players get more money. Say football, its slightly different as an attending fan of a club goes to watch their club rather than the whole league each weekend, but fan base and marketing spend of fans of bigger clubs is going to massively outweigh the smaller ones - if fans attending formula 1 had to say who they were supporting its likely in many cases to be one of Ferrari, Mercedes, Red Bull or McLaren - thats why they are spending their money. Thats why Ferrari have power, because they know their appeal is what keeps fans coming in to watch, to buy tshirts and caps, to pay subscription TV and so on.