I am adjusting the tabularx solution to position two syntax trees side by side, as numbered subexamples.
The problem I am having is too much whitespace between the second-level label ("a.") and the tree, particularly the first one. This space only appears if I add the tabularx environment from the solution, I do not have that issue with the forest and the gb4e packages on their own and in combination. I seem to have enough space on the page for both tree examples to fit nicely; is there a way I could do that with these packages? As it is, the positioning is weird.
MWE:
\documentclass[11pt]{article}
\usepackage{fontspec}
\usepackage[margin=1truein]{geometry}
% The below is a standard package setup for syntax trees.
\usepackage{forest}
\useforestlibrary{linguistics}
\forestapplylibrarydefaults{linguistics}
% This package is for numbered linguistic examples.
\usepackage{gb4e}
% The following three packages allow me to position trees side by side and as numbered examples.
\usepackage{tabularx}
\usepackage{array}
\usepackage{environ}
% The following code is later used to to position trees side by side and as numbered examples.
\newcolumntype{T}{>{\refstepcounter{tabenum}}X}
\newcounter{tabenum}[xnumi]
\renewcommand{\thetabenum}{\thexnumi\alph{tabenum}}
\newcommand*{\tabex}{\relax\alph{tabenum}.\quad}
\NewEnviron{multiexe}{%
\setlength{\extrarowheight}{1ex}
\begin{tabularx}{\linewidth}[t]{@{}TTT@{}}
\BODY
\end{tabularx}
}
\begin{document}
\begin{exe}
\ex
\begin{multiexe}
\tabex
\begin{forest}
[S[NP[D\\A][N\\cat]][VP[VP\\slept][PP[P\\on][NP[D\\the][N\\mat]]]]]
\end{forest}
\label{tree1} &
\tabex
\begin{forest}
[S[NP[D\\A][N\\cat]][VP\\slept]]
\end{forest}
\label{tree2}
\end{multiexe}
\end{exe}
\end{document}

forestintroduces stray spaces, which has long been fixed. In particular, I cannot reproduce the issue on my updated TeXLive2020 installation. – May 12 '20 at 23:39