Postgres has very limited features related to FTS, so it is useful only for very simple cases or for very limited budget. Elasticsearch is stable enough(but good devops and devs needed) and has numerous of features. Anyway Elasticsearch is not a "plug and play" solution and requires much work to be done for good search quality. Why I know this all? I'm running ecommerce search startup, based on Elasticsearch as primary storage.
Actually you should avoid splitting software into microservices by default until you really need it. It's easy to catch the moment - you will see that movement of some project part into microservice will help you to close many points and issues.
So:
1) Read classic books about monolith software.
2) Read decent books about microservices approach.