Du kannst das Paket `array` laden und Dir einen neuen Spaltentyp definieren, beispielsweise mit dem von Dir gewählten Paket `hanging`:
\usepackage{hanging}
\usepackage{array}
\newcolumntype{h}[1]{>{\hangpara{1em}{1}}p{#1}}
Das Einfügen des zusätzlichen Abstands zwischen den Tabellenzeilen kannst Du statt über `\rule{0pt}{1.5em}` mit der Anweisung `\addlinespace[<abstand>]` erledigen. Wird deren optionales Argument nicht angegeben, dann wird die Länge `\defaultaddspace` verwendet. Diese ist auf `0.5em` voreingestellt.
\documentclass[jou,a4paper,ngerman]{apa7}
\usepackage[T1]{fontenc}
%\usepackage[utf8]{inputenc}% nur bei sehr alten TeX Distributionen nötig
\usepackage[english,main=ngerman]{babel}
\usepackage[ngerman=ngerman-x-latest]{hyphsubst}
\usepackage{caption}
\usepackage{lmodern}
\usepackage{multirow}
\usepackage{threeparttablex}
\usepackage{hanging}
\usepackage{array}
\newcolumntype{h}[1]{>{\hangpara{1em}{1}}p{#1}}
\begin{document}
\begin{table}[htbp]
\vspace*{2em}\centering
\centering
\begin{threeparttable}
\caption{Hängender Einzug wäre toll}
\label{tab:Tabelle}
\begin{tabular}{h{4cm}h{4cm}}
\addlinespace
Kategorie 1: Kompliziert Kompliziert
& Eine durchaus anspruchsvolle Kategorie, die ausführlich erklärt werden muss.
\\\addlinespace
Kategorie 2: Nicht ganz so kompliziert
& Das kann jeder verstehen, auch wenn es über mehrere Zeilen geht \ldots
\\\midrule
\end{tabular}
\tablenote{}
\end{threeparttable}
\end{table}
\end{document}