The trees can be separated into two parts, the foliage, and the trunk.
The green foliage can be placed on a top layer and have nothing else done to them.
The brown trunks will need to be sorted when the player moves in front of them.
Using the system z sorter place all of them, and the player into a family, and give the family a variable.
Make an event that sets the variable to the family y axis .
Then use the system sort z order using that family variable.