Почему не работает создание объекта?
Почему не работает - вам написали, синтаксическая ошибка.
Возьмите ваш action.title в кавычки, либо в квадратные скобки - в зависимости от того, что вам нужно. В первом случае именем свойства будет "action.title", во втором - значение action.title.
Скорее всего, код должен быть таким. const courses = (state = {}, action) => {
  switch (action.type) {
    case constants.courses.CREATE_COURSE:
      return {
          ...state,
          [action.title]: {
              title:action.title
          }
      }
  }
  return state;
}