In our experience, almost all the larger company deals come from a contact you already have or you network to get. Rarely does a cold email or call end up in a deal with a larger organization, although we have stumbled into them a few times.

The short version is that you need to target companies with specific demographics. I'd say few companies really are "setup" to handle freelancers, but many businesses are setup to have solutions provided. You get bigger deals by not being a team of freelancers and instead bringing solutions to problems. Your goal is to take a part of a project or a whole project and develop it outside their team generally. If you are integrated to their team and need to be in their daily stand ups or on site etc, you are just a contract employee which will not make you independent or allow you to take on other work easily and grow your business (see my last point below on this).

To your question how to get these deals. Find ways to meet people in these companies, using your network of contacts, go to meet ups, conferences and basically stalk people that can help you get in the door. You can cold call and send emails, this keeps your name around but just be careful not to be annoying. We also research companies heavily to find out what their tech stack is, what issues they are having, who works there that we can target and try and offer free help in some cases. For example, many times one of us will answer forum posts from a developer we have found works for the target company. This is in fairness to help them out but importantly for us many times it then can help lead us to a foot in the door (we just made a new contact). Without a big marketing budget it is all about creative ways to meet people at a distance and have them see you as a solution and expert that can help them.

IMO, focus on companies that have revenue of $3M-$10M annually at first, sometimes this is a guess obviously because they are private but rough head count and other details you find in the public domain can be used to estimate. This generally gets you companies that are mature enough to understand they have to pay for quality and also small enough that they still need to outsource quite a bit of work to meet their goals. Not only that, what we found is that by doing well for these types of companies, they will help you network to the next level up and so on (usually they will have mentors or contacts they are happy to introduce you too). So over time you are working with as large of an organization as you like.

Personally, we have gone back to targeting businesses in the $10-50M in annual revenue (with most in the $10-25M), they are large enough to afford us, small enough we can meet all their legal requirements and generally low enough politics that we can get paid reasonably timely. We have worked with Fortune 10 companies too, but the time requirements and reserve funds needed to service a client that is used to be waited on by everyone can be really tough when you are building yourself up. They also generally have a great deal of cruft you have to work your way through and typically pay their bills very slowly, which again is tough when you don't have significant reserves. On this note too, the industry of the companies matters too, a $3m software company is way different then a $3m retail sales company. You have to learn to tell the differences and what can be sold to each.

Last point, I know this is a touch off topic, but here is my simple way to figure out if a company is really trying to use us as a group of contract employee or a solutions provider, I just ask/answer some basic questions. If 1 or more are yes then they just want a contract employee which is not what we do. Are they trying to manage our time? Do they want to set our working hours? Are they expecting exclusivity? Are they wanting to task my team individually? Are they wanting us on-site sitting in their building doing the work? The last point does not include sales, demo, installation, integration or training type work.