Page template with different page and post content

the_content() (and many others) must be inside The Loop.

For retrieving a post/page/custom-post-type data outside the Loop, take a look here:
Get post content from outside the loop

The working code, based on your example, would be:

<div class="middle-inner">
<div class="center-inner">               
    <!-- This is content -->

    <?php                               
        global $post;
        query_posts("post_type=roomtype&orderby=name");
        if ( have_posts() ) {       
            ?>

        <div class="title">
        <p class="h1"><?php _e ('Rooms', 'hotel');?></p> 
        </div>

        <?php $i=0; while ( have_posts() ) { the_post(); $i++; 
         //$thumbnail_id = get_post_thumbnail_id($post->ID);
        // $link_image = wp_get_attachment_image_src( $thumbnail_id, 'roomtype-image' );
        //$link_thumbnail =  wp_get_attachment_image_src($thumbnail_id);    

        <?php echo 'I NEED MY PAGE CONTENT HERE - just add the following line' ?>
        <?php the_content(); ?>

        if(has_post_thumbnail()) {
            $thumbnail_id = get_post_thumbnail_id($post->ID);
            $link_image = wp_get_attachment_image_src( $thumbnail_id, 'roomtype-image' );
        } else {    
          $args = array(
                    'post_type' => 'attachment',
                    'numberposts' => -1,            
                    'post_parent' => $post->ID, 
                    'post_mime_type' => 'image'
                    ); 
            $attachments = get_posts($args);
            $link_image = wp_get_attachment_image_src( $attachments[0]->ID, 'roomtype-image' ); 
        }           
        ?>