In Tridion 2011 SP1 HR2, it looks like the custom url field size for custom pages only allows a restricted number of characters (251). Has anybody else come across this or knows whether this can be increased in some way?
Yes I've come across this before, is it possible for you to use a URL shortening service or physically reduce the length of the URL?
Failing that you could create a local page that immediately redirects to your long-URL page
If we try to understand the HTTP then the HTTP protocol does not place any a limit on the length of a URI. Servers (IIS in your case) are able to handle the URI of any resource they serve, and are able to handle URIs of unbounded length. You will get 414 Error (Request-URI Too Long) status if a URI is longer than the server can handle.
You may try by increasing the RequestLimit
filter in CM Server IIS by using following command from the Command Line on the server:
appcmd set config /section:requestfiltering/requestlimits.maxurl: <maximum length in character>
For specific details you may want to refer below links:
http://technet.microsoft.com/en-us/library/cc754791%28v=ws.10%29.aspx
In my opinion Long URLs are generally mistake (unless there are some exception) - and you may want to revisit and see if it is possible for you to shorten the URL.
I hope it helps.