You could use custom fields to do this. Everytime you create a post and you upload and dispay and image in the post you could also upload a thumbnail image of a set size and then add it as a custom field.
Then in your archive.php template instead of calling the page content through <?php the_content(); ?>
you could call the custom field instead. The code below may help with this.
<?php if (have_posts()) : while (have_posts()) : the_post(); ?>
<img src="<?php echo get_post_meta($post->ID, "Archive-Image", true); ?>" alt="<?php the_title(); ?> Image" />
<?php endwhile; ?>
This will get the image from the custom field with the key “Archive Image” and display for each post. If you want to link that image to the post itself, then just wrap it is an a tag with a permalink like this:
<?php if (have_posts()) : while (have_posts()) : the_post(); ?>
<a href="<?php the_permalink(); ?>"><img src="<?php echo get_post_meta($post->ID, "Archive-Image", true); ?>" alt="<?php the_title(); ?> Image" /></a>
<?php endwhile; ?>
Hope this helps.