You guys really need to think outside the box. You keep waiting till traditional times is why you have problems
I routinely take Gibralter/Malta/Suez in one fell swoop as Italy or Germany with nothing more then Infx3 units. But you need to do it Immediately. Whether you go west first or you go Poland first, whether you are Germany or Italy, have your units in place and ready to go and as soon as you know an Allied DOW is coming you hit those locations. Very simple. Ill do overkill to guarentee i get them (4-5 Inf div for Gibralter, 4 for Malta, a dozen or so for the Suez). The Suez your likely to take naval losses so the more you can send the better. Malta falls easy and Gibralter isnt much harder.
If Im germany one of the first thing i do is build transports and get some infantry and ship them to Italy as soon as they are in the Axis. If Im Italy I prefer to take Spain first but if the Civil War launches late ill go Balkans. As Italy i usually control Spain, Yugoslavia, Hungary, Romania, Bulgaria, Greece, Turkey and Persia by the time Germany attacks Poland. So when the Attack starts i hit the 3 locations above and attack from Persia into Iraq. If i feel like helping in Russia ill hang on to the border countries, if i dont, ill puppet them right before Barbarossa. Even if Russia overruns them so what? Ive drained them for a few years and now they are stretched all out and cant reinforce against the Germans so easy.
As Germany I often attack UK first. I hit the three spots above, Bombay then Calcutta and Rangoon (From Italian East Africa), and Singapore (from Taiwan), then if necc Hong Kong. I get the UK to fall in one month on average.
Why would anyone want to wait and build huge fleets and go against well fortified positions? its not worth it. Proactive over reactive.