You're slightly lucky it's torn in a fashionable way, so what I would do (and did with one of my jackets) is to use small strips (scraps, if you have them) of something like leather, faux leather, corduroy, velvet, basically any high fashion fabric.
If you're female, laces would also work. Just lace the gap from the shoulder seam all the way through the side seam only on that particular side (if your mind is able to allow asymmetry, which a matter of fact looks awesome); if not, just repeat it on the other side.
If you're using fabric instead of laces, cut a straight rectangular strip (something similar to what is often sewn on the back of jeans near the loops in the belt line, but a little less wide) and then just sew it over the torn area (yes, it's a patch, but that's a style nowadays); like above, if you want you can do it on both sides. If you want, you can also go a bit extreme! Have a fabric of that exact length of that portion of the jacket (from collar to shoulder to collar bone) and just sew it all over the whole piece. (I'm always thinking leather or leather-y texture like faux leather, but it's also fine if it is any other fabric.) If you don't want extreme but advanced and complicated, you could get some extra denim from a pair of jeans or old clothes you no longer wear, make some mini pockets out of it, and sew it on both sides to hide the torn side and the patch.
I'll be honest, there's many ways of fixing it. You just have to think a bit creatively and out of the box.