To fix the numbering, you’ll have to modify the first code to reset numbering via CSS. This way (untested, but you’ll catch the idea 😉 ).
<?php if ( have_comments() ) : ?>
<h3 class="com"><span class="com-titlu"><?php comments_number('Niciun comentariu', 'Un comentariu', '% comentarii' );?></span> la: <?php the_title(); ?></h3>
<?php $number = intval(get_query_var( 'cpage' )) * intval(get_query_var( 'comments_per_page' )) - intval( get_query_var( 'comments_per_page' ) ); ?>
<ol class="commentlist" style="counter-reset: item <?php echo $number; ?>">
<?php wp_list_comments...
The idea of used algorithm for getting starting number is that if your are on page 2 displaying 5 comments per page, you’ll start with 6.
Than to determine the first number, you have to multiply the page number (2) with comments per page (5) – you’ll get a result of 10.
The first number have to be 6, so you’ll have to subtract comments per page (5) from the result and use the final result as { counter-reset: item FINAL_RESULT }
CSS starts numbering from a number following after the one used in this rule. So 5 is OK.
2*5-5 = 5 => starts with 6
3*5-5 = 10 => starts with 11
If you need the reverse numbering, this is going to be much more complicated as CSS probably does not offer a solution. But you can check this question and answer. Also the algorithm for determining first number is going to be different.