You are in a similar boat with me, although I have already taken one step.
I made an application for a small group of people who were near me, for free and without ads, and released it. Then I created another application for a wider group of people, for free, but with ads. The two applications were almost the same, except for a few things that were supposed to be application specific (e.g. strings, resources, and several variables). After being disappointed in updating both of them, I decided to go with a library approach. This may give you headaches in the beginning, but it will really reduce your renewal. You will only need to update the library file, and then just compile and verify the actual application.
Because of how you describe your situation, I think it will be easier for you than for me. Include one of your applications (possibly a free ad) in the library, and then in supported ads just overwrite the layouts that show ads.
I cannot offer your second option, just because, as far as I know, there is no way to do what you want.
source share