I had a breakthrough with the EO line today. Up until now I would make my plan for the EO line by keeping track of which edges were oriented and which were not; in my head, the plan would be something like "orient these 3 edges on F, leaving the top one miss oriented, move it to the back, (hmmm, this will place one of the line edges on FL), then move the miss oriented edge in DL to the back, and orient the ones in the back doing B', which will place the other line edge on BR". It was very hard to keep track of both miss oriented and line edges to figure out a good way to do the line (a lot of times it'd even be hard to figure out where the line edges would end up after EO).
What I'm doing now is first memorizing the moves I'll have to do to orient bad edges, completely disregarding the line edges. The above example becomes something like F', U2, D', B. Then, I look for the line edges and mentally execute the moves in my head while keeping track of the line edges only (oh look, turns out that if I do a B' instead of a B I can get them on opposite sides, then I'd just need to do R, L, D' to get the full EO line). Got an 18.13 ao12 after a few tries of using this approach, which included a 14.37 single (ZZ PB for me), I'm only ~2 sec slower with ZZ than CFOP now, and as long as I'm sub 20 I'm happy so it's safe to say that I've officially switched to ZZ as my main method.