Zu dem Code sind ein paar Dinge anzumerken. Zum einen kannst du mit
\begin{figure}[h] das Gleiten nicht unterbinden. LaTeX erweitert das automatisch zu
\begin{figure}[ht]. Außerdem kann es dazu führen, dass alle Gleitumgebungen erst am Ende des Dokuments ausgegeben werden und dabei sogar welche verloren gehen. Daher ist
\begin{figure}[h] meist eine der schlechtesten Ideen, die man haben kann. Aber selbst, wenn die Abbildungen nur an den Anfang der nächsten Seite gleitet, steht die Fußnote auf der falschen Seite. Ein
\footnotetext nach
\end{figure} ist also eine gefährliche Sache.
Daher ist es besser, entweder die Abbildung weitgehend frei gleiten zu lassen und dann mit Hilfe einer
minipage die Fußnote in der Gleitumgebung ausgeben zu lassen. Das hat auch den Vorteil, dass der Leser nicht vom Text zur Gleitumgebung, von der Gleitumgebung zum Seitenende und dort zur richtigen Fußnoten (wenn es mehrere gibt) springen und den ganzen Weg dann wieder zurück machen muss. Das stört im Lesefluss nämlich extrem. Deshalb bei sogenannten Konsultationsobjekten die Fußnoten immer am Ende des Objekts ausgeben. Oder ab, wenn man nicht will, dass die Abbildung gleitet, ist es besser, gar nicht erst eine Gleitumgebung zu verwenden. Dann hat man zwar das Problem, dass man das Objekt selbst so platzieren muss, dass man keine großen Löcher im Dokument hat (halbe Seiten leer ist einfach schlecht). Dafür hat man kein Problem, die Fußnoten an das Ende der richtigen Seite zu bekommen.
Ein
\raggedright innerhalb von
\caption ist wie eigentlich alle Formatierungen darin eine schlechte Idee. Man muss dann min. zusätzlich ein optionales Argument angeben, weil natürlich jegliche Formatierung auch in das entsprechende Verzeichnis wandet und dort ggf. Schaden anrichtet. Allerdings müsste man so bei einer Änderung der Formatierung diese in jeder
\caption-Anweisung durchführen. Die beste Lösung für dieses Problem ist daher, entweder die Formatierungsmöglichkeiten von KOMA-Script zu verwenden oder das Paket
caption und dann dessen Formatierungsmöglichkeiten.
Desweiteren sei noch auf meine Signatur hingewiesen. Mit einem vollständigen Minimalbeispiel statt eines Codeschnipsels wäre es schlicht einfacher, getestete Lösungen zu zeigen. Oftmals ist es dann auch einfacher, das Problem zu beurteilen. Aber ob Du das haben willst und anderen Fragestellern zusätzlich das Leben ebenfalls erleichtern willst, ist letztlich Deine Entscheidung.