Instead of cloning N times like org-clone-subtree-with-time-shift does, could one generate the right amount of headings the same way org-class does. Instead of getting the same entry repeated like org-class does, you could later change the title of each entry individually:
org-clone-entry-with-class-type-range on * Cours <2015-01-01 8:00-10:00> would create (with a + 1 month timeshift) something like * Cours <2015-02-01 8:00-10:00> * Cours <2015-02-01 8:00-10:00> ... some weeks skipped some holidays skipped Julien.