I don't know what's going on there either, but at least you can work around it by switching the base ring of your matrices from the symbolic ring SR to the algebraic field QQbar (which is a good idea anyway):
sage: M = matrix.circulant(vector(QQbar, [1,-1/2*I,0,0,0,0,0,0,0,0,1/2*I]))