Even after smashing the label width (the usual culprit as addressed in the linked question), the brace cannot shrink any more because it is the smallest size provided in Computer Modern.
Some font/symbol packages define smaller curly braces. The only one I can think of off the top of my head is MnSymbol, which is unfortunate because it has several incompatibilities.
An alternative that should work with any font packages is to define a new \smallunderbrace command that uses the smallest font \tiny to create the brace:
\def\smallunderbrace#1{\mathop{\vtop{\m@th\ialign{##\crcr
$\hfil\displaystyle{#1}\hfil$\crcr
\noalign{\kern3\p@\nointerlineskip}%
\tiny\upbracefill\crcr\noalign{\kern3\p@}}}}\limits}
This command is identical to \underbrace from base LaTeX with the exception of \tiny inserted in the last line. Here's the result:

\documentclass{article}
\usepackage{amsmath}
\makeatletter
\def\smallunderbrace#1{\mathop{\vtop{\m@th\ialign{##\crcr
$\hfil\displaystyle{#1}\hfil$\crcr
\noalign{\kern3\p@\nointerlineskip}%
\tiny\upbracefill\crcr\noalign{\kern3\p@}}}}\limits}
\makeatother
\begin{document}
\begin{gather}
(du) \
(\smallunderbrace{du}{\text{\clap{label}}}) \
(\smallunderbrace{\text{test}}{\text{\clap{label}}})
\end{gather}
\end{document}
The last test line is just to show that this new command is still extensible, but the \smallunderbrace command should only be used when the standard \underbrace is too big.
MnSymbolin my preamble already, but I've commented it out temporarily because calling as many packages as I am using makes compilation take a ridiculously long time. – jdc Jan 25 '15 at 04:16Misplaced \noalign, I solved those by wrapping the\tiny\upbracefillin curly braces:{\tiny\upbracefill}in my definition of\smallunderbrace. – josh Jun 05 '20 at 06:54