Today again after long I caught in this issue. Every-time I fix this problem and move on but this time I tried understanding the root cause and get it fixed and since the fix which worked for me is not in the answers to this question, thus adding part with details :
I am using EGit
plugin in eclipse, and the problem was same as OP - eclipse compare tool was not highlighting the differences rather a whole block as if the whole file has changed.
Lets understand the issue first , since I was aware that this is related to CRLF
vs LF
eol , so went to check that first and enabled the visibility as :
Eclipse -> Preferences -> Text Editors -> Show whitespace characters

In the above click on configure visibility.

Now as you see highlighted in above image, select the check boxes under Trailing and against both Carrier Return (CR)
and Line Feed (LF)
.
Apply - Save and Close. Now in my case , file looked like this :

and this evident that for me I had CRLF
window like eol which further also confirms as I do not have core.autocrlf
set to true
and by default it is false
thus Git
actually didn't tried to do anything about my EOL delimiters (as expected in this case).
And until this stage, the compare tool was showing the whole file as changed.
Now, moving to fix which worked for me.
Since, I wanted to get this fix within IDE realm, thus I first converted the particular file to Unix delimiters as :

Then my file became with LF (Unix delimiter) eol :

And compare tool started highlighting the delta.

So the issue as it was assumed was because of CRLF
(window style) eol and eclipse comparator was not able to highlight delta rather whole file.
Then, instead of changing each file or package to Unix delimiters .
I updated in Eclipse->Preferences -> Workspace

By this, eclipse takes care of line-endings for new files to Unix
, so that text files are saved in a format that is not specific to the Windows OS and most easily shared across heterogeneous developer desktops. After all this compare tool worked happily ever.
Hope this helps.