Question 1) There are 2 answers, actually. Depending on context, #1 and #2 can either mean the same thing or be opposites. The meaning will change depending on the intended form of grammar used.
#1 can be read as a Past Conditional and implies the student's own inability to conquer the difficult test is why he did not pass. It also implies that the student didn't study harder (he gave up or perhaps had other obligations). Here we are using the past tense of 'can' to talk about one's ability.
-Even if he had studied harder, he couldn't have passed.
-What it means: it doesn't matter how much the student studies - the test is so difficult that it's almost impossible to pass.
-What actually happened: The student didn't study harder. He took the test and didn't pass. It is a very hard test.
#2's "can't have" is only used as a Past Modal of Deduction. Here "can't have" is used to express one's disbelief over an impossible/near-impossible situation. In this sentence, the student actually passed the exam and the speaker is in amazement/disbelief over the fact.
-He can't have passed the exam, even if he had studied harder.
-What it means: it doesn't matter how much the student studied. This test is extremely difficult! It's a miracle that he passed.
-What actually happened: He studied harder. He passed the test. It's a very difficult test, so that's really impressive and we are in disbelief that someone managed to do it.
So, if #1 is viewed as a Past Conditional, then the semantic difference is that the student in #1 didn't pass, and the student in #2 passed.
#1 can also be read as a Past Modal of Deduction, in which case it would have the same meaning as #2: The student passed the very hard test, and we are suitably amazed and in disbelief over his academic prowess.
As a native speaker, on its own I read #1 as a Past Conditional. More context is needed to be able to actually determine how it should be interpreted.