Howdy, my friend.
This does sound a little complicated.
We have a .com website which has a little domain authority and is growing steadily. We are a UK business (but have a US office which we will be adapting too soon)
We are ranking better within google.com than we do on google.co.uk probably down to our TLD.
From first line it sounds like you have one domain (.com), second line tells me that you got two domains (.co.uk and .com). So, which is it? well, it wouldn't affect my answer, I guess, I'll cover both.
So, let's go step-by-step:
-
Is it a wise idea to 301 our .com to .co.uk for en-gb enquiries only? - No!Because i can be in any part of the world and i can set my browser locale header to whatever i want. Or it can happen automatically due to whatever circumstances. So, let's say I'm travelling from UK to US. My browser is set to en-gb locale, I do my search for your company in US, I get redirected to UK website, even though I want to fing US one - no good. Bad UX

-
Is there any evidence that this will help improve our position? will all the link juice passed from 301s go to our .co.uk only if we are still applying the use of .com in the US? - I combine these two into one answer. Link juice can be passed if crawlers can differentiate locale on a given URL. Here is how they can do it:
https://support.google.com/webmasters/answer/6144055?hl=en
So, let's say there is a website with link to yours. It's one link. You can't set two "hreflang"s, or "rel"s, or write it in two languages at the same time on the same URL. So, basically you can tell bots to consider that link as a "juice-passer" to only one domain.
Now, is there a good reason for you guys to have two different domains? If it has similar information, style etc., you can combine them into one (use subdomains or subfolders - Matt Cutts video) and pretty much cut efforts in half with double the return 
If there is a good reason for you guys to have completely different domains, I would concentrate for building/working/structuring .uk website for UK and .com website for US. It means that you'll have to do two backlink profiles building, two different technical and "another one" (forgot the word
) SEOs and so on.
Hope this helps.
