since it changes when you flip the hub, maybe the chainline isn't right
(the cogs give slightly different chainlines, they are different thicknesses)
how are you measuring your chainline ??
for a pretty darn accurate measurement
half the rear spacing - the distance from inside of rear dropout to the face of the cog - half the width of the cog
should equal
the distance from the edge of the seat tube to the face of the chainring + half the width of the chainring + half the width of the seat tube
also, maybe your chainring is not perfectly round, or not installed with the bolts tightened down evenly ?