So, I have done some further research myself on this matter.
The problem isn't the program (while there could be added a feature added to fix the issue), it is the format of the ebook.
Ebooks come in 2 formats; reflowable and fixed layout. Fixed layout is 1:1 page size of the physical book, hence the page numbers match up. While on the other hand, the reflowable format is.. well, reflowable. The text spreads itself to fix the given size of the screen, the chosen format of the font, size and space between the lines - and don't get me wrong, this feature is amazing for casual reading. Though, for students, who have the requirements of showing a specific page number for citations are forced to guess or get the physical book.
But, the program still show the range of page number your on, so it must know how much text is on 1 page in the physical book, or am I wrong? One solution could be to let the user choose how to view the ebook, for what purpose they need the information for and view the ebook either in fixed layout or reflowable.