For foliage you will want to use masked materials because what you are seeing is a limitation of translucent materials in general.
When determining the sort order the engine typically uses the object’s bounds and origin. The one that is closer will get drawn on top. This doesn’t work so well when dealing with many translucent parts of the same object. For example like leaves on a tree or grass (since foliage meshes get grouped into clusters).