Hi
I looked at your code and it looked fine to me. I got it running on a test site and sure enough the ten posts were numbered 1 through 10.
Also the code you sent only allows ten posts per page. So if you are seeing 16 posts on one page all number one, the code that is running does not seem to be the same code you sent.
A possible exception to that is this line of code
<?php if (is_type_page()) continue; ?>
which is the 1st line of code in the WP loop. I don't have that function here so couldn't run it. You should check out what designates a page as is_type_page - this code is skipping over any posts that meet that logic.
So most likely either there is a problem with that logic, or is it possible there is a different version of the code you sent me that runs on another template page?
Just before the end of the loop is this code
<?php $postnum++; ?>
<?php endwhile; ?>
That $postnum++ is what adds one to the counter each time the loop processes a post. If that line is missing from a template the counter will never increment.