I had a lot of those same problems with BA. It always seems like Batman has to chase him around the stage.
A couple things I noticed that gave me problems are Adam's wakeup, options to punish Adam and the low lightning. Batman needs to establish the tone in the match, and I know it can be difficult when you have to deal with the low lightning. What I usually do is dash and block low, anytime he jumps, I block him. This eliminates both options as you push BA to the corner. One trick I like to do as you get him to the corner is air to air him. A lot of times BA players are going to try and dive kick over your head. If you can catch him in the air before or as the dive kick starts, the J2 will beat it out.
I know dive kick can be punished now, but I always seem to whiff when I try it unless I have bats out. When I block a dive kick I release bats if available. 9 times out of 10 BA is going to jump back or dash back. The bats will catch the jump and you can get a J2, B2 combo. If he dashes back you have to give pursuit, obviously. What I like to do is dash once forward and see what he does. If he continues to walk back I will either dash once more and go with a B1 starter, or try a slide just to get BA on the ground.
If you can get him on the ground, you obviously have to deal with that insane wake up. The first knockdown I like to dash up and wait until the wake-up window comes in to play. Then I'll just block to see what BA does. If he wakes-up you'll know tendencies. You can then determine if you want to let the wake-up play out and attack, or if he doesn't wake up you can continue offense. I also like to call a bat after a dash in just in case he doesn't wake-up.
Also, sometimes a neutral jump will avoid the wake-up, yet sometimes I get hit with it. Does anyone have a 100% success or fail rate with a neutral jump on BA's wake-up?