The awkwardness is not that you are bad at asking. It is that the request sounds, to your own ear, like an admission that you need work. Almost nobody on the receiving end hears it that way, and that gap between what you feel and what they hear is what stops most people from asking at all.
The reframe that helps is accurate rather than rhetorical. When somebody refers you, they are solving a problem for a person they know. They are the one who had the answer, and being the person who knows a good contractor is a small form of social currency people genuinely enjoy holding. You are offering somebody the chance to be useful at no cost to themselves.
Timing does most of the work. The best moment available is immediately after somebody expresses satisfaction, because they have opened the door themselves and stepping through it is not an imposition. Asking during a quiet month, unprompted, into a relationship that has been dormant, is considerably harder and produces less.
Make the question small enough to answer. Naming the specific situation you help with, and asking who comes to mind, is a retrieval task rather than a search. Adding a constraint makes it easier still: somebody in a particular industry, or at a particular stage, or with a particular problem. The narrower the question, the more likely a name arrives.
Give them something to forward rather than expecting them to explain you. A sentence describing what you do, in language a person outside your field could repeat, means the referral survives being carried by somebody who does not do your job. Most of your early work arrives through a conversation you are not present for.
Make it easy to decline, which sounds counterproductive and increases the response rate. Adding that nobody comes to mind is a perfectly good answer removes the pressure, and people who feel obliged tend to avoid the conversation entirely rather than saying no.
Do not offer a reward unless the relationship makes it appropriate, since payment changes the nature of a recommendation and most people find it uncomfortable. A referral given freely carries more weight than one that was purchased, and the person making it knows that too.
Thank them specifically when it produces something, and tell them what happened. That closes the loop, it demonstrates that referrals are acted on, and it makes the second one considerably more likely. Businesses that receive a referral and never mention it again rarely receive a third.
Then ask consistently rather than in campaigns, because a habit produces a steady flow where a burst produces a spike and then nothing. Building the question into how work ends is what makes it sustainable, and it removes the need to decide each time whether this is a good moment.
Make it a habit rather than an event, since asking once produces one round of referrals and asking as part of how work concludes produces a flow. The businesses with strong referral streams are not better at asking, they simply ask every time.
Be specific about who you want, since that makes the retrieval easier and it filters the referrals you receive. Asking for anybody produces occasional poor fits that cost you a conversation and cost the referrer some credibility.
Follow up on a referral promptly, since the person who made it has staked something on you and a slow response reflects on them. That is the fastest way to stop receiving them.