\documentclass[12pt]{book}
\usepackage{array}
\usepackage[
 a4paper,noheadfoot,nomarginpar,margin=20mm,showframe
]{geometry}
\usepackage{zref-savepos}
\usepackage{fancyvrb}
\pagestyle{empty}

%\maxdepth=0pt

\makeatletter
\newsavebox\tl@box
\newcount\c@tlcount
\setcounter{tlcount}{0}
\def\thetlcount{\the\c@tlcount}
\newenvironment*{tltabular}[1]{%
 \stepcounter{tlcount}%
 \begin{lrbox}{\tl@box}%
 \begin{tabular}[t]{|#1|}%
 \hline
 \zref@savepos
 \zref@labelbyprops{tl@b\thetlcount}{posy}%
 \xdef\g@dp@arstrutbox{%
   \the\dimexpr\dp\@arstrutbox+\arrayrulewidth
 }%
 \ignorespaces
}{%
 \hline
 \end{tabular}%
 \end{lrbox}%
 \zref@refused{tl@a\thetlcount}%
 \zref@refused{tl@b\thetlcount}%
 \dimen@=\dimexpr
   \zposy{tl@a\thetlcount}sp-\zposy{tl@b\thetlcount}sp%
 \relax
 \raisebox{\dimen@}{%
   \zref@savepos
   \zref@labelbyprops{tl@a\thetlcount}{posy}%
   \box\tl@box
 }\\*[-\g@dp@arstrutbox]%
 \hbox{\vrule width 0pt depth\g@dp@arstrutbox}%
}



\begin{document}%
\VerbatimFootnotes   % this causes spacing to change

 xyz\footnote{%
  \begin{tltabular}{l}
    abc\\
    def\\
    ghj\\
    klm\\
  \end{tltabular}%\\
 }
 xyz\footnote{%
  \begin{tltabular}{l}
    abc\\
    def\\
    ghj\\
    klm\\
  \end{tltabular}%\\
 }
 xyz\footnote{%
  \begin{tltabular}{l}
    abc\\
    def\\
    ghj\\
    klm\\
  \end{tltabular}%\\
 }
\end{document}%