LaTeX starts horizontal mode when a image is inserted by \includegraphic. I.e. the image is a first letter of a paragraph. Then a space is here from the end of line a then \vadjust which is a primitive used by the \vspace macro. Then the \caption finalizes the paragraph using \par and starts a new paragraph.
The width of the image is exactly equal to current \hsize value, so the space between image and \vadjust is good beak point and the paragraph is broken here. So, you have image at the first line and \vadjust plus glue from \parfillskip at the second (unwanted) line. After this line, the material from \vadjust (i.e. \vskip-0.2cm) is inserted.
If you remove the space between the image and the \vadjust, i.e. write:
\includegraphics[width=1\textwidth]{example-image-a}%
(note the percent character), then the following \vadjust immediately follows after the image and only single-line paragraph is created, no unwanted line is here.
Another solution: use \vskip-0.2cm primitive instead \vspace macro. This primitive inserts \par before it, i.e. the paragraph is finalized as one-letter paragraph with the image only and no unwanted line is here. This is because the \par primitive removes the last glue from the horizontal list (the glue inserted here from the space at the end of line).
I recommend to use \vskip instead \vspace always because \vspace brings much less trouble: \vskip doesn't insert any obscure \vadjust and the horizontal mode is finalized before\vskip which is more understandable behavior.
Note that you have another bug in your code: the last \\ in your code is used at the end of the paragraph which consists from four "letters": subfigure, subfigure, break, subfigue, subfigure. The \\ works like \vfil\break in this context. If it is used at the end of the paragraph then a new unwanted underfull empty line is created and the Underfull hbox warning message is printed as you can see in your log file.