Python 3.5, 160 141 126 124 121 109 bytes
This is a simple implementation of the sequence's definition. Golfing suggestions welcome.
Edit: -17 bytes thanks to Leaky Nun. -9 bytes thanks to Peter Taylor. -6 bytes thanks to Sp3000 and switching to Python 3.5.
import math;f=lambda n,r=[2,1],c=3:n<2and r[1]or(c in r)+math.gcd(c,r[0]*r[1])<2and f(n-1,[c]+r)or f(n,r,c+1)
Ungolfing:
import math def f(n, r=[2,1], c=3): if n<2: return r[1] elif (c in r) + math.gcd(c,r[0]*r[1]) < 2: return f(n-1, [c]+r) else: return f(n, r, c+1)