Pagination Not Working When Modifying Loop Based on Post Category

different approach:

global $wp_query;
$args = array_merge( $wp_query->query, array( 'category__not_in' => array(4,7) ) );
query_posts( $args );
get_template_part( 'loop', 'index' ); 

if this approach should not work, please check if one or more of the plugins is interfering – deactivate all plugins; if the exclusion of categories works then, re-activate one plugin at a time to find the interfering plugin.