One thing I read awhile ago and have applied with good results may be applicable here. This answer is more about where you put the line instead of how to get it straight. For getting it straight you may be able to just eyeball it and where you put the line may make it more noticeable. Maybe even use a combination square to make sure the tape is square to other tape that runs perpendicular to it. Looks like an older home and floors and walls my not be square but if you have the paint lines square to themselves I think it will look good.
What I read is you paint the ceiling first, then when you tape the ceiling to paint the walls you leave about a 1/8" gap on the ceiling so that the wall paint goes on the ceiling a bit. All wall/ceiling joints are slightly filleted and nothing is ever perfectly straight. If you try to paint exactly at the line it looks uneven but if you let the paint go up to the ceiling a little bit the edge looks cleaner.
Your walls appear to have a large radius fillet but the principle may help. Here's a quick mockup of the difference. I didn't try to get the lines straight because it's hard to tell what straight would be with the limited view of the photo you posted but to me the right side looks better.
If you don't want to paint the fillet the wall color, another option I think I've seen is to install a small piece of decorative molding on the wall just under the fillet. Use a level to get it straight and you have an easy reference to paint up to. A small bed molding or maybe an egg and dart scribe molding.
The above example uses a 1/2" cove molding to separate the wall and ceiling. Personally I think that looks the best but there's a little more time and money involved. Use a flat ceiling paint to paint the ceiling to reduce the shininess which shows some of the imperfections in the surface that is seen in your photos.