Is it possible to determine if data was encrypted by a specific public key?
This depends on the scheme that is being used.

In the case of a scheme that behaves like a random oracle: We could assume that the scheme that is used behaves as a random oracle, and that we are to infer by the ciphertext that some specific key was used. This would imply that we could actually get some information about the key, by knowing only the ciphertext (and not the plaintext). Namely if a specific key was used to encrypt the plaintext. This would however violate the assumption that the scheme behaves like a random oracle. So in the case of a random oracle the answer would be no.