My hair is a lot like yours. I haven't found the magic bullet yet, but I've been going with a sort of modified "curly girl" method for the last few weeks and I think it looks a lot better than it has for the last few years. Although my style has been more or less the same for a long time (long layers with varying bangs lengths), this is kind of an advantage because even a cheap hair salon has a hard time messing it up.
Anyway, I've started using the "co-wash" method most of the time. Basically, find a cheap conditioner that you like (many people like to find one without any silicone products in it -- I think the White Rain brand is a favorite in the US) and use it to clean your hair rather than shampoo. I've started using a leave-in conditioner after this, sometimes with a little dab of alcohol-free gel.
Then the important bit: plopping. Spread your towel out on a flat surface (the toilet lid is usually convenient), "plop" your hair down with a bit of scrunch, and wrap your towel around your head so that your hair is piled on top of your head, rather than being wrapped in the towel. Some people use an old t-shirt or a microfiber towel, as apparently ordinary terrycloth encourages frizz. YMMV.
I tend to get better curls, rather than waves, this way. But somehow the resulting waves aren't as frizzy if I decide to brush the curls out once it's dry. If I do it the way I used to and use pin curls or pull my hair into a bun or twist to let it dry, it turns out frizzy. Makes no sense to me, but whatever works, right??