Is there a way to know the number of days I have hit reputation cap on stackoverflow.com ?
As of now there are two days counting numbers, reached and exceeded. Here's a quote from Jeff Atwood (from How is it possible to exceed the rep cap without reaching it?):
So for example, if you receive 19 upvotes on answers and 1 acceptance, that's 205 points. If this lasts until the end of the day, you have exceeded, but not reached the reputation cap.
There seems to be some confusion about the exact rule for exceeded (as discussed in Does acquiring only 200 reps in a day from only votes count toward Epic/Legendary?). If you only get 200 pts, it may not count toward exceeded. To be safe, you should try to score strictly greater than 200 pts.
Do note that you may lose a day that previously counted towards exceeded/reached when e.g. you lose an acceptance or the question was deleted.
Regardless of fairness, this seems to be the case (though I haven't been able to find a credible source).
With regards to
Here's an excerpt from Shouldn't I have received the Legendary badge by now?:
So deletion/lost acceptances can sometimes cause inconsistencies between various parts of the system.
There is currently no convenient way to audit deletions that affect you (see: How can I audit deletions that affect me?). You are also currently not notified of lost acceptances (see: Please show us when we lose an accepted answer).