Are there good ways to "handicap" Midway?
Depending on the edition (60s or 90s), you can handicap for the Japanese by:

60s:


allow Japanese player to start a day (or partial day) sooner than the American player


90s:


allow Japanese player to bring forces onto the board closer to Midway (ie, shorten the time available to sink them)


Handicapping for the American player really isn't needed in the 60s edition, since all you have to do is kill the Atago (iirc). You might be able to add an additional search zone, but that'd be pretty minimal, in my experience. The only other thing I could think of would be to force carrier battle groups to not combine / join-up (or force them to all sail together).

In the 90s edition, you could handicap for the Americans by:


shortening the Japanese search distance
adding a searchable zone to the American side 


The basic rules (ie, no CAP, no funky optional rules, etc) make it more-or-less impossible for the Japanese player to guarantee victory, unless they hide their "flag ship" very well and don't attack until they're right atop Midway (don't even search - just go full steam ahead).

When you add CAP, optional rules, and other variants, any form of "handicapping" is going to be pretty hit-or-miss, in my experience.

If both players have read the rules, the Americans are handed a whopping big advantage in that they "know" where the fleet is coming from - and while a game has to make some changes to make it playable, the historical battle didn't provide that much information (which makes the 90s version better (plus it uses hexes instead of squares (which means planes can fly more "realistic" paths, instead of having to convert 5 diagonal squares into 7 straight ones (the distance being nearly equal) for out-bound and in-bound operations))).