I’m not sure you can. If my understanding is correct, the root directive sets the web root directly, so the last instance of it within a site definition “wins” (the previous declarations are discarded). You just can’t have two separate web roots in one site, so the only way to go about it would be to have one site for example.com, with its own root, and one site at example.com/path, with another web root.
Yeah, maybe if the second root was entirely contained within the first, but that doesn’t make sense. Caddy lacks the equivalent of a location directive because of how complicated it would be to integrate with things like Hugo plugin being able to create an entire static site on server start, etc. It’d be nice, though – and ultimately I think necessary.