Well if you are on your computer, you should be putting in the computer's ip (where it's hosted) not your router's IP. (So not sure why you are getting your router's IP -- maybe putting in wrong IP?)
If you are able to view the stuff locally (even by typing in localhost), then it's probably a port problem. If you have already enabled port 80 for your machine, then the easiest thing would probably be just changing the port in the httpd.conf file, restarting apache, then opening that port on your router.
Then you should be able to view it by using your external IP. (not 192.168)
Unless... xampp has a way to "put apache online" like wamp does. ( I do not recall ).
Which what wamp does is only allow local access to apache, when you turn on apache, it then allows viewers from the "outside" world to see your website(s).
If it does, then that's probably the problem.
_____
Edit.
Actually, maybe I misread, but if you are saying people are putting your external IP and getting your router's page, then you can try to disable that in your router if it lets you. (you can just google it and see if your router allows you to).
or the simple way, is like I said change the listen port in httpd.conf