Wenn Du in einer Spalte bei jeder Zelle ein \mulitcolumn stehen hast, dann hast Du für die Spalte den falschen Typ gewählt. Wenn das Paket array geladen ist, bekommst Du zum Beispiel mit

Code:
>{\raggedleft\arraybackslash}p{1.2cm}
eine Spalte mit einer Breite von 1.2cm für den Inhalt, der dann rechts ausgerichtet wird. Man kann man sich aber auch neue Spaltentypen definieren.

Code:
\documentclass[12pt]{article}
\usepackage[onehalfspacing]{setspace}
\usepackage[a4paper, portrait, margin=2.5cm]{geometry}
\usepackage{mathptmx}
\usepackage{tabularx}% lädt auch array
\setlength\extrarowheight{5.5pt}

\newcolumntype{L}[1]{>{\raggedright\arraybackslash}p{#1}}
\newcolumntype{R}[1]{>{\raggedleft\arraybackslash}p{#1}}

\begin{document}
	\begin{figure}[h]
		\caption{Money creation by commercial bank via loan granting. Highly stylized balance sheets.} \label{credit_creation}
		\centering
		\begin{scriptsize}
			\begin{tabular}{@{}L{2cm} R{1.2cm} | L{2cm} R{1.2cm}@{}}
				\multicolumn{4}{c}{\textbf{Commercial Bank}} \\
				\hline
				%
				Assets & 
				\multicolumn{2}{c}{} & 
				Liabilities \\
				\hline
				% 
				$\Delta$ Loan & 
				+1,000 &
				$\Delta$ Deposits & 
				+1,000  \\
				\hline \hline
				%	& & & 
			\end{tabular}%
      \hfill
			\begin{tabular}{@{}L{2cm} R{1.2cm} | L{2cm} R{1.2cm}@{}}
				\multicolumn{4}{c}{\textbf{Customer}} \\
				\hline
				%
				Assets & 
				\multicolumn{2}{c}{} & 
				Liabilities \\
				\hline
				% 
				$\Delta$ Deposits & 
				+1,000 &
				$\Delta$ Loan & 
				+1,000  \\
				\hline \hline
				%	& & &
			\end{tabular}
		\end{scriptsize}
	\end{figure}
\end{document}
Übrigens ist scrartcl keine Option von article sondern selbst eine Dokumentenklasse.