Look into Mail Chimp and specifically at their Free package. You can have 2,000 subscribers and send 12,000 emails per month for free. No need to purchase anything at all.
I have not used any of the programs you mentioned, so I don't know what advantages they do / don't provide. The obvious disadvantage to those programs is the one-time buy when in fact ...
Adding the suggestions from above as solutions:
From my recollection, I think in Mautic or Phplist, you can manually create contacts with same email. Please search their old forums to see a couple of ways to get around this. But you will need to verify yourself that this meets your full requirements.
The other solutions I can think of may be overkill since ...
Sender tool can help to create own HTML email design for subscribers and send it to your subscribers. You can use segmentation to send different emails for every product or you can use your data and import that. Sender have ease to use drip drop builder and ready-to-use templates.
Sender have integrations with Wordpress + Woocommerce, Magneto or Prestashop, ...
Take a look at QGIS & GRASS for a number of APIs for accessing geographic based data and some of the data sources listed here for a number of gratis data sources including demographic information. There is also a very nice tutorial here on accessing geographic demographic data.
I'm currently working on a startup for just this purpose: https://mydash.io.
It's completely free during beta so come and check it out :)
Unfortunately, I don't have all of your networks connected yet, but if you ping me on the inapp chat I'll try to connect the rest asap. It's demand and supply basically. :)
I would suggest using python and the libraries wordpress_json and one of the many facebook API libraries, requests-facebook looks promising, to fetch your information.
Once you have it there are an huge number of possibilities for formatting it for output into a draft newsletter for you to edit and send.
Free, Open Source & Gratis
Handle both ...