Please help me with the below.
I think that the following sentence is correct:
1. A cancer has been discovered in his brain.
How can we put a sentence when we don't know where is the cancer?
Are the below correct?
2. A cancer has been discovered in him.
3. There has been a cancer discovered in him.
I wouldn't use 'a' here:
A tumour (tumor) has been found in his brain.
In answer to your second question, I'd say this:
He has been diagnosed with cancer.