I personally use this script to show recent posts:

<?php query_posts('showposts=5'); ?>

<?php while (have_posts()) : the_post(); ?>
<li><a href="<?php the_permalink() ?>"><?php the_title(); ?></a></li>

<li><?php the_content_limit(250); ?></li>
<?php endwhile;?>

I put this within the header.php. It works, but additionally other posts and pages will get screwed up. After I attempt to load any regular page (page.php) I recieve only content from two blogs and other alike problems. It's not the problem using the_content_limit. I additionally attempted excerpt - and it is exactly the same.

Any ideas how to prevent the issue but nonetheless have recent posts?

You don't put query_posts in header usually. Try creating a new file to incorporate there and before new querys make use of this <?php wp_reset_query(); ?>