Is there a zero knowledge proof to show an encrypted blob is the key for a given public key? Let's say I have a private key x  with a corresponding public key y. If I encrypt x as E(x), is there a zero knowledge proof I can use to show that E(x) contains the private key for y?
I am assuming that you are encrypting $x$ under a different public key from potentially a different scheme. The answer is yes, since every language in NP can be proven in zero knowledge. The question, of course, is can this be done efficiently. The answer to that depends on the schemes involved.