Edinburgh, who had the home advantage after topping Pool 5, dominated the opening quarter but were denied by some disciplined defensive work from Munster.
The visitors opened the scoring in emphatic fashion as Earls wriggled past two Edinburgh defenders to cross the line.
Having added some width to their play, Edinburgh responded with a quick break of their own as centre Chris Dean powered over the try line. Jaco van der Walt added the extras to level the scores.
Van der Walt's penalty five minutes before the break handed Edinburgh a 10-7 lead at halftime.
News that makes sense
Your trusted source for staying up-to-date with the world around you. Get free daily news updates and analysis, straight to your inbox.
Tyler Bleyendaal and Van der Walt traded penalties after the interval but it was Earls who scored again through a quick counter-attack to put Munster in the final four.
(Reporting by Hardik Vyas in Bengaluru; Editing by Christian Radnedge)
