csquotes: Footnotes after Block Quotes with Quotation Marks

Note that the csquotes package allows to define an optional argument for citations in \blockquote and this one can be defined to be a footnote.

So, you just have to add

\renewcommand{\mkcitation}[1]{\footnote{#1}}

in the preamble

and use

\blockquote[bla...]{\lipsum*[1]...}

instead of

\blockquote{\lipsum*[1]...}\footnote{bla...}

Complete MWE

\documentclass{scrartcl}
\usepackage[english]{babel}
\usepackage{lmodern,csquotes,lipsum}

\renewcommand{\mkblockquote}[4]{\enquote{#1}#2\ifterm{\relax}{#3}#4}
\renewcommand{\mkcitation}[1]{\footnote{#1}}

\begin{document}
\lipsum*[1]
\blockquote[bla...]{\lipsum*[1]...}
\lipsum*[1]
\end{document} 

Output

enter image description here


Update

Your issue in the update can be resolved in this way:

replace

\renewcommand{\mkcitation}[1]{\footnote{#1}}

with simply

\renewcommand{\mkcitation}[1]{#1}

and then use

\blockquote[\footnotemark]{\lipsum*[1]...}
\footnotetext{Says \cite[59]{companion}. See also \cite[59]{companion}.}

instead of

\blockquote[Says \cite[123]{xyz}. See also \cite[123]{xyz}.]{\lipsum*[1]...}

In this way, we've separated the \footnotemark from the \footnotetext and the problem doesn't arise.

Complete working MWE

\documentclass{scrartcl}
\usepackage[english]{babel}
\usepackage[style=authoryear]{biblatex}
\usepackage{lmodern,csquotes,lipsum}

\renewcommand{\mkblockquote}[4]{\enquote{#1}#2\ifterm{\relax}{#3}#4}
\renewcommand{\mkcitation}[1]{#1}

\addbibresource{biblatex-examples.bib}

\begin{document}
\lipsum*[1]
\blockquote[\footnotemark]{\lipsum*[1]...}
\footnotetext{Says \cite[59]{companion}. See also \cite[59]{companion}.}
\lipsum*[1]
\end{document}

Output

enter image description here