When you use double crochet, don't chain 3. I got this tip from a professional designer. Instead just chain 2. It will come out much straighter. Be sure that you are counting the stitches on each row as you go.
To straighten out a piece you've already finished, I just use a sc edge. I hope this helps.