1° install Discourse Category Lockdown and lock down the event category so it shows only the titles of the event
2° Use the publish feature from discourse to have anonymous user to see the event topic with its /pub/ url and they will see a published page with only the description and pictures.
3° Use the landing page fr plugin to create a page listing all the topics from 1 category(check the bottom of this page Rendering data from a specific topic - Discourse Landing Pages - Pavilion)
4° Set on the category>security option its redirection to the landing page you have created for the event category that you use
5° optional :disable searches for anonymous so that they cannot find anything via the search feature; to do so : add this to your app.yml in the env section and restart the app(without rebuild)
env:
DISCOURSE_RATE_LIMIT_SEARCH_ANON_GLOBAL_PER_MINUTE: 0