Simply put, you don't want to do this in an unmanaged package. You'll have absolutely NO control over what happens with your code (esp if you also make it available on Github), you'll have no LMA package that comes with selling it through the App Exchange (assuming you don't distribute using the AE), and no free advertising that comes with the App Exchange distribution if you don't.
You can't do any kind of an upgrade to an unmanaged package, so if your add-on needs the base package to be upgraded in some manner, your add-on will have to do it which would be troublesome for you. I highly recommend you invest the time and money to read Andrew Fawcett's excellent book "Force.com Enterprise Architecture" which discusses the types of issues that you're facing. BTW, what you're suggesting doing could also be interpreted as a means of attempting to avoid paying Salesforce their fees for the cost of distributing your product through the App Exchange.
It's not at all unusual for "free apps" to come with a license which can be upgraded to enable additional features. In my view, that might be the wisest route to go. You then have only one package to distribute, can give a 30 day trial of all the features if you wish to which then goes back to the freeware version after 30 days, or can allow users to arrange for trials with a temporary license if you want with no additional install. Both get upgraded at the same time without any impact to your end users. That would seem to me to be the simplest way to go.
In response to your comments, yes, you can do this all with one package, but it cannot be an unmanaged package. If you want to charge for the additional features that you enable with a license, your package needs to be managed through the App Exchange. You can simply offer a default "free license" or unregistered version and sell a license that when entered, enables the additional features. Talking to an account rep from the Partner Program would be my recommendation. They can easily explain how that works. It's a very common model for many ISVs. Without it being a managed package, it would be impossible to use the LMA for enabling the added features or managing any kind of upgrade or updates to your app.