That said, this is a bit too much overhead for most developers to actually implement. For instance, you would also need to create a settings bundle, so users can reset this setting if they want.
What I'd really like to see is Apple enable this at a system level. FireFox for iOS would be nice to see, and we don't want developers to have to revisit this issue if/when it comes.
As for making a Settings bundle, that's pretty easy too and you wouldn't have to do it unless you wanted an easy way to let someone change their preference later.
Besides all that, I think everyone agrees with you that Apple should make it possible to do it at a system level. The simplest way to do this in my opinion would be to allow users to remove pre-installed apps if there is an alternative on the device. For instance, if I have an app that responds to "http:// URLs, allow Safari to be removed.
I would definitely encourage you to polish up that gist into some kind of easily incorporated module (a category on UIApplication, perhaps?)... the more people who start doing this sort of thing, the more pressure there will be on Apple to enable this the "right" way.
When you launch the app for the first time, it could ask "Do you want to open URLs in Chrome by default in Chrome-enabled apps?", and make it possible to change this in Chrome's settings menu.
This setting could then be stored in a UIPasteboard named something like com.google.chrome.default, and apps that want to implement the functionality suggested in the original post would just look in this pasteboard for the current setting.
For a couple examples: OpenUDID and SecureUDID use UIPasteboard.