`tabularx` führt eine `tabular*`-Umgebung aus. Ein einfacher Trick wäre nun, das `\hline` vor dem Ende von `tabular*` einzupatchen:
    \documentclass{article}
    \usepackage[utf8]{inputenc}
    \usepackage{blindtext}
    \usepackage{tabularx}
    
    \usepackage{xpatch}
    \newenvironment{MeineUmgebung}
        {%
        \expandafter\xpretocmd\csname endtabular*\endcsname{\hline}{}{}%
        \tabularx{\linewidth}{|l|X|}
            \hline
            Erste Überschrift & Zweite Überschrift \\
            \hline}
        {\endtabularx}
    
    \begin{document}
    
    \begin{MeineUmgebung}
    kurzer Text & \blindtext \tabularnewline
    \end{MeineUmgebung}
    \end{document}
![mit automatischer Linie am Ende][1]
Damit kommt das `\hline` noch vor dem Ende der Tabelle. Nachteil ist, dass es schief geht, wenn das `\tabularnewline` am Ende der `MeineUmgebung` fehlt. Aber das dürfte ein eher generelles Problem werden.
Achtung: Das funktioniert nicht, wenn man `ltablex` statt `tabularx` verwendet!verwendet!
  [1]: http://texwelt.de/wissen/upfiles/test35_1.png