Custom post type archive page not working

Your post type, courses, has a rewrite slug of course. So your archive template will be archive-course.php.

Your taxonomy, courses_category, has a rewrite slug of course, so your taxonomy archive template will be taxonomy-courses.php.

This complete template hierarchy can be useful.

If you want an archive page showing all posts of the post type courses at yoursite.com/courses, you should assign the post type a rewrite slug of courses. (I believe this is the default since your post type is courses.)

The taxonomy archive template, taxonomy-[slug].php, will be invoked when viewing an archive page of all posts of the post type courses assigned to a specific taxonomy term. So if you had a term beginner, and the rewrite slug courses for the taxonomy term, you’d see an archive of beginner courses at yoursite.com/courses/beginner.

If you assign the same rewrite slug to the post type and the taxonomy, you may get some clashing. But I’m not sure.

As Pieter Goosen said, you will need to flush the rewrite rules whenever you make changes like this.