You get access to the SiteUser object in the user registered event handler so it seems you should be able to retrieve the custom property and then handle it differently according to your own logic all within the same user registered even handler.
There is no conditional logic for these event handlers, each and every handler defined will fire but it is not a great idea to have a lot of them. For your scenario 1 should be enough.
There is a code snippet at the bottom of this page that sows how to get the custom property value.
http://www.mojoportal.com/userprofileconfiguration.aspx
Hope it helps,
Joe