`\qedhere` ist ja gerade so definiert, dass das `\qed` Zeichen vom Stack am rechten Rand erscheint. Die Lösung ist daher so einfach, dass sie vielleicht schon wieder zu einfach ist, um selbst darauf zu kommen. Je nachdem, ob das Zeichen bei der Breite der Formel berücksichtigt werden soll oder nicht:
\documentclass[final, english, ngerman, a4paper]{scrreprt}
\usepackage{scrhack}
\usepackage{amsthm}
\usepackage{amsmath}
\begin{document}
\renewenvironment{proof}[1][\proofname]{%
\par\pushQED{\qed}\normalfont%
\trivlist\item[\hskip\labelsep \bfseries#1\@{.}]%
\ignorespaces
}
\begin{proof}
Beispieltext...... Beispieltext...... Beispieltext...... Beispieltext...... Beispieltext...... Beispieltext...... Beispieltext...... Beispieltext...... Beispieltext......
\begin{equation*}
a = b + c
\end{equation*}
Beispieltext...... Beispieltext...... Beispieltext...... Beispieltext...... Beispieltext...... Beispieltext...... Beispieltext...... Beispieltext...... Beispieltext......
\begin{equation*}
a = b + c \popQED
\end{equation*}
\end{proof}
\end{document}
oder
\documentclass[final, english, ngerman, a4paper]{scrreprt}
\usepackage{scrhack}
\usepackage{amsthm}
\usepackage{amsmath}
\begin{document}
\renewenvironment{proof}[1][\proofname]{%
\par\pushQED{\qed}\normalfont%
\trivlist\item[\hskip\labelsep \bfseries#1\@{.}]%
\ignorespaces
}
\begin{proof}
Beispieltext...... Beispieltext...... Beispieltext...... Beispieltext...... Beispieltext...... Beispieltext...... Beispieltext...... Beispieltext...... Beispieltext......
\begin{equation*}
a = b + c
\end{equation*}
Beispieltext...... Beispieltext...... Beispieltext...... Beispieltext...... Beispieltext...... Beispieltext...... Beispieltext...... Beispieltext...... Beispieltext......
\begin{equation*}
a = b + c\makebox[0pt][l]{\popQED}
\end{equation*}
\end{proof}
\end{document}
---
**Ergänzender Hinweis:**
Der noch vorhandene Abstand vor dem `\qedsymbol` kommt übrigens daher, dass in deiner Definition von `proof` `\qed` auf den Stack gelegt wird und das als
`\DeclareRobustCommand{\qed}{%
\ifmmode \mathqed
\else
\leavevmode\unskip\penalty9999 \hbox{}\nobreak\hfill
\quad\hbox{\qedsymbol}%
\fi
}`
definiert ist. Wie du siehst, ist der Abstand hier fest eingebaut. Natürlich kann man bei `\pushQED` stattdessen auch eine Version ohne Mindestabstand einfügen:
`\renewenvironment{proof}[1][\proofname]{%
\par\pushQED{\mbox{\qedsymbol}}\normalfont
\trivlist\item[\hskip\labelsep \bfseries#1\@{.}]%
\ignorespaces
}`