What is the exact difference between Indikativ & Konjunctiv II
You answered that already yourself:
Indikativ is something real and in present. Konjunctiv II is unrealistic or something may not happen.
The difference, in short, is that Indikativ describes a real scenario while Konjunktiv 2 describes an imaginary, hypothetical one. It can be an advice, or something unrealistic, as you said.
Having sollten verb in praetritum form in Indikativ is not making me understand that how can we say that Indikativ is only present then?
I guess you misunderstood the meaning of present. Indikativ cannot only exist in present time, but describes something that is or was present (= realistic or real, happened or is the case).
Indikativ Präsens: Der Lehrer soll seine Schüler unterrichten.
=> The teacher shall/ must teach his students.
Indikativ Präteritum: Der Lehrer sollte seine Schüler unterrichten.
=> The teacher needed to teach his students.
Konjunktiv 2: Der Lehrer sollte seine Schüler unterrichten.
=> The teacher should teach his students. (because at the moment, he is not).
Sollte in the second example means the teacher had to teach his students, it can be confused with Konjunktiv 2, that would be another meaning.
Sie sollten dorthin gehen.
=> Indikativ Präteritum: They were supposed to go there.
=> Konjunktiv 2: They should go there.
As you can see, sollte(n) can be both, Indikativ and Konjunktiv. It depends on the context.
I read in book that Konjunctiv II as advice Ratschlaege. Example: du solltest dich belohnen. ( This indeed sounds as advice and not some unrealistic thing )
Again, Konjunktiv 2 does not only describe unrealistic situations but also those that simply are not present as of now (havent happened yet). So you should treat yourself. English is a bit similar in this case, you would not say you shall treat yourself.