You can certainly set up a page template for custom post types. Give this a whirl:
<?php
/*
Template Name: Your template name
*/
// Get header
get_header(); ?>
<div id="primary">
<?php // Query post type
$the_query = new WP_Query( array( 'post_type' => 'cpt_name', 'posts_per_page' => -1 ) );
if ( $the_query->have_posts() ) : ?>
<?php // Begin loop
while ( $the_query->have_posts() ) : $the_query->the_post(); ?>
<section>
<h2><a href="https://wordpress.stackexchange.com/questions/139319/<?php the_permalink(); ?>"><?php the_title(); ?></a></h2>
<?php the_excerpt(); ?>
</section>
<?php endwhile; ?>
<?php // Reset
wp_reset_postdata(); ?>
<?php else: ?>
<p><?php _e( 'Please add some content.' ); ?></p>
<?php endif; // End loop and primary ?>
</div>
<?php get_footer(); ?>