Error setting PETSc options repeatedly

Is there a way to avoid instantiation of the solution if my forms contain functions from a MixedElement space, which I get from call phi_re, phi_im = ufl.split(solution.solve()) (like in this question) ?
This call returns new objects, so I have to create new forms and instantiate new LinearProblem.