Is it possible to change the generator without knowing the private key used? For example, prover sends P = xG and verifier somehow sends back P = xH without learning x. 

Is this possible?
For example, prover sends P = xG and verifier somehow sends back P = xH without learning x. 


Yes; if the verify knows that $H = yG$, he just computes $P' = yP = xyG = xH$