[proofplan]
Choose ordered bases of $\mathfrak n^-$, $\mathfrak h$, and $\mathfrak n^+$, and concatenate them in triangular order to obtain an ordered basis of $\mathfrak g$. The Poincare-Birkhoff-Witt theorem gives a basis of $U(\mathfrak g)$ consisting of ordered monomials in this concatenated basis, and those monomials are exactly products with all $\mathfrak n^-$ factors first, then all $\mathfrak h$ factors, then all $\mathfrak n^+$ factors. Applying PBW separately to the three Lie subalgebras identifies the three groups of ordered monomials with bases of their enveloping algebras. The multiplication map sends the [tensor product](/page/Tensor%20Product) of these three bases bijectively onto the triangular PBW basis of $U(\mathfrak g)$, hence is a [vector space](/page/Vector%20Space) isomorphism.
[/proofplan]
[step:Choose an ordered basis compatible with the triangular decomposition]
Let
\begin{align*}
(x_1,\dots,x_a)
\end{align*}
be an ordered complex basis of $\mathfrak n^-$, let
\begin{align*}
(y_1,\dots,y_b)
\end{align*}
be an ordered complex basis of $\mathfrak h$, and let
\begin{align*}
(z_1,\dots,z_c)
\end{align*}
be an ordered complex basis of $\mathfrak n^+$. Since
\begin{align*}
\mathfrak g=\mathfrak n^- \oplus \mathfrak h \oplus \mathfrak n^+
\end{align*}
is a [direct sum](/page/Direct%20Sum) of complex vector spaces, the concatenated ordered list
\begin{align*}
(x_1,\dots,x_a,y_1,\dots,y_b,z_1,\dots,z_c)
\end{align*}
is an ordered complex basis of $\mathfrak g$.
[/step]
[step:Identify the triangular PBW basis of $U(\mathfrak g)$]
Let $i_{\mathfrak g}:\mathfrak g\to U(\mathfrak g)$ denote the canonical [Lie algebra](/page/Lie%20Algebra) map into the universal enveloping algebra. By [citetheorem:8827] applied to the ordered basis chosen above, the monomials
\begin{align*}
i_{\mathfrak g}(x_1)^{\alpha_1}\cdots i_{\mathfrak g}(x_a)^{\alpha_a}i_{\mathfrak g}(y_1)^{\beta_1}\cdots i_{\mathfrak g}(y_b)^{\beta_b}i_{\mathfrak g}(z_1)^{\gamma_1}\cdots i_{\mathfrak g}(z_c)^{\gamma_c}
\end{align*}
with $\alpha_i,\beta_j,\gamma_k\in\mathbb Z_{\ge 0}$ form a complex basis of $U(\mathfrak g)$. Denote this basis by $\mathcal B_{\mathfrak g}$.
The hypotheses of PBW are satisfied because $\mathfrak g$ is a Lie algebra over $\mathbb C$ and the displayed concatenated list is an ordered basis of $\mathfrak g$.
[/step]
[step:Apply PBW separately to the three triangular subalgebras]
Let $i_-:\mathfrak n^-\to U(\mathfrak n^-)$, $i_0:\mathfrak h\to U(\mathfrak h)$, and $i_+:\mathfrak n^+\to U(\mathfrak n^+)$ be the canonical Lie algebra maps. Applying [citetheorem:8827] to the ordered bases of $\mathfrak n^-$, $\mathfrak h$, and $\mathfrak n^+$ gives complex bases
\begin{align*}
\mathcal B_-=\{i_-(x_1)^{\alpha_1}\cdots i_-(x_a)^{\alpha_a}:\alpha_i\in\mathbb Z_{\ge 0}\}
\end{align*}
of $U(\mathfrak n^-)$,
\begin{align*}
\mathcal B_0=\{i_0(y_1)^{\beta_1}\cdots i_0(y_b)^{\beta_b}:\beta_j\in\mathbb Z_{\ge 0}\}
\end{align*}
of $U(\mathfrak h)$, and
\begin{align*}
\mathcal B_+=\{i_+(z_1)^{\gamma_1}\cdots i_+(z_c)^{\gamma_c}:\gamma_k\in\mathbb Z_{\ge 0}\}
\end{align*}
of $U(\mathfrak n^+)$. Again, the PBW hypotheses are satisfied because each of $\mathfrak n^-$, $\mathfrak h$, and $\mathfrak n^+$ is a Lie algebra over $\mathbb C$ equipped with the indicated ordered basis.
[guided]
We now apply the same theorem three more times, once to each piece of the triangular decomposition. For $\mathfrak n^-$, the ordered basis is $(x_1,\dots,x_a)$, so [citetheorem:8827] says that the ordered monomials
\begin{align*}
i_-(x_1)^{\alpha_1}\cdots i_-(x_a)^{\alpha_a}
\end{align*}
with $\alpha_i\in\mathbb Z_{\ge 0}$ form a complex basis of $U(\mathfrak n^-)$. For $\mathfrak h$, the ordered basis is $(y_1,\dots,y_b)$, so the ordered monomials
\begin{align*}
i_0(y_1)^{\beta_1}\cdots i_0(y_b)^{\beta_b}
\end{align*}
with $\beta_j\in\mathbb Z_{\ge 0}$ form a complex basis of $U(\mathfrak h)$. For $\mathfrak n^+$, the ordered basis is $(z_1,\dots,z_c)$, so the ordered monomials
\begin{align*}
i_+(z_1)^{\gamma_1}\cdots i_+(z_c)^{\gamma_c}
\end{align*}
with $\gamma_k\in\mathbb Z_{\ge 0}$ form a complex basis of $U(\mathfrak n^+)$.
The reason for doing this separately is that the tensor product basis of
\begin{align*}
U(\mathfrak n^-)\otimes_{\mathbb C}U(\mathfrak h)\otimes_{\mathbb C}U(\mathfrak n^+)
\end{align*}
is built from one PBW monomial in each factor. We will compare those tensor product basis elements with the single PBW basis of $U(\mathfrak g)$ obtained from the concatenated triangular basis.
[/guided]
[/step]
[step:Show that multiplication sends the tensor product basis bijectively to the triangular PBW basis]
The inclusions $\mathfrak n^-\subset\mathfrak g$, $\mathfrak h\subset\mathfrak g$, and $\mathfrak n^+\subset\mathfrak g$ induce algebra homomorphisms $j_-$, $j_0$, and $j_+$ satisfying
\begin{align*}
j_-(i_-(x_i))=i_{\mathfrak g}(x_i), \qquad j_0(i_0(y_j))=i_{\mathfrak g}(y_j), \qquad j_+(i_+(z_k))=i_{\mathfrak g}(z_k).
\end{align*}
Therefore, for every choice of exponents $\alpha_i,\beta_j,\gamma_k\in\mathbb Z_{\ge 0}$, the multiplication map sends
\begin{align*}
i_-(x_1)^{\alpha_1}\cdots i_-(x_a)^{\alpha_a}\otimes i_0(y_1)^{\beta_1}\cdots i_0(y_b)^{\beta_b}\otimes i_+(z_1)^{\gamma_1}\cdots i_+(z_c)^{\gamma_c}
\end{align*}
to
\begin{align*}
i_{\mathfrak g}(x_1)^{\alpha_1}\cdots i_{\mathfrak g}(x_a)^{\alpha_a}i_{\mathfrak g}(y_1)^{\beta_1}\cdots i_{\mathfrak g}(y_b)^{\beta_b}i_{\mathfrak g}(z_1)^{\gamma_1}\cdots i_{\mathfrak g}(z_c)^{\gamma_c}.
\end{align*}
This assignment is bijective from the tensor product basis
\begin{align*}
\mathcal B_-\otimes\mathcal B_0\otimes\mathcal B_+
\end{align*}
onto $\mathcal B_{\mathfrak g}$, because both basis elements are indexed by the same tuples of nonnegative integers
\begin{align*}
(\alpha_1,\dots,\alpha_a,\beta_1,\dots,\beta_b,\gamma_1,\dots,\gamma_c).
\end{align*}
[/step]
[step:Conclude that the multiplication map is an isomorphism and expansions are unique]
A complex-[linear map](/page/Linear%20Map) that sends a basis bijectively onto a basis is a vector space isomorphism. Since $m$ sends the basis
\begin{align*}
\mathcal B_-\otimes\mathcal B_0\otimes\mathcal B_+
\end{align*}
bijectively onto $\mathcal B_{\mathfrak g}$, the map
\begin{align*}
m:U(\mathfrak n^-)\otimes_{\mathbb C}U(\mathfrak h)\otimes_{\mathbb C}U(\mathfrak n^+)\to U(\mathfrak g)
\end{align*}
is a vector space isomorphism.
Because $\mathcal B_{\mathfrak g}$ is a basis of $U(\mathfrak g)$, every element of $U(\mathfrak g)$ has a unique finite complex linear expansion in the triangular PBW monomials. Equivalently, after identifying those monomials with the images under $m$ of the tensor product PBW basis, every element has a unique finite expansion as a linear combination of products
\begin{align*}
j_-(u)j_0(v)j_+(w)
\end{align*}
with $u\in\mathcal B_-$, $v\in\mathcal B_0$, and $w\in\mathcal B_+$. This is exactly the claimed triangular PBW factorisation.
[/step]