No, it is not. The generic fraction field can only reduce something up to a unit since the gcd is defined up to a unit. I agree it looks funny, but I don't see a sensible way to code to get a negative sign in the numerator. Compare with
sage: ~F(-q+1)
1/(-q + 1)
sage: ~F(q-1)
1/(q - 1)
sage: -1 / F(-q+1)
(-1)/(-q + 1)
sage: -1 / F(q-1)
(-1)/(q - 1)
Of course, there are two distinct elements here, but which ones are the "correct" way to print stuff? Not to mention if we are doing something in a more general integral domain (or polynomials with a completely different implementation).
Something could be done when the denominator is a unit not equal to one though. Possibly only in the printing however (i.e., not in the reduce() method and its internal representation) in order to reduce the amount of computations when manipulating such elements.
Best,
Travis