Creating Sections for Post Types

Set your regular permalinks to

/blog/%postname%/

Register your custom post type with has_archive => TRUE and with_front => FALSE.

Example:

add_action ( 'init', 'register_project_cpt' );

function register_project_cpt()
{
    register_post_type(
        'projects',
        array (
            'has_archive'          => TRUE,
            'hierarchical'         => TRUE,
            'public'               => TRUE,
            'publicly_queryable'   => TRUE,
            'rewrite'              => array (
                'slug'       => _x( 'projects', 'slug', 'text_domain' ),
                'with_front' => FALSE
            ),
            'show_in_nav_menus'    => TRUE,
            'show_in_menu'         => TRUE,
            'show_in_admin_bar'    => TRUE,
            'show_ui'              => TRUE,
            'supports'             => array(
                'author',
                'comments',
                'editor',
                'excerpt',
                'page-attributes',
                'revisions',
                'thumbnail',
                'title',
            )
        )
    );
}

In wp-admin/options-reading.php choose a page for the blog post archives, that will be used on /blog/ then.

enter image description here