I don’t think i’ve fully grasped how you want this to work, but if i assume for a moment that as long as the loop has at least 6 posts, you want to insert extra markup after the third result in the loop..
Example
Insert extra markup after the third post, when the current iteration has at least 6 posts
<?php
if( $loop->have_posts() ) :
//$post_count = $loop->found_posts; // <-- think this is the total, corrected below
$post_count = $loop->post_count; // should be the result count for the current page
$loop_count = 0;
while ( $loop->have_posts() ) : $loop->the_post();
$loop_count++;
?>
<!-- your regular loop markup, eg. title, content, etc.. -->
<?php
if( $post_count >= 6 && $loop_count == 3 ) :
?>
<!-- extra markup to put in when it's the end of the third post of this loop -->
<?php
endif;
endwhile;
endif;
?>
This way you avoid the need to use an offset and can using paging if necessary. I havn’t tested the code, but i’ve given numerous examples like this before, simply let me know of any problems and i’ll re-examine(and test) the code.