Reading all the timelines recently and the good points made. It appears Germany almost has no choice but to invade the Soviet Union in 1941, its the least bad of things the Germans could do.
a) Submarines were not going to beat Britain, if they came close the British would pull back bombers from bombing Germany to help. Their best chance was early and the didn't and couldn't have the numbers of submarines then and the torpedoes were faulty too.
b) A continued Blitz in 1941 wasn't going to inflict enough damage to force the British to make peace or reduce British production and the British defenses were getting better and the Germans didn't have the aircraft to do this well anyway.
c) Libyan ports and roads don't have the logistical capacity to support a drive into Egypt (its a long way to Alexandria to truck water, fuel and supplies in sufficient quantity with trucks). Perhaps maybe if all the Italians were withdrawn and replace with motorized Germans but politically that is not happening
d) Turkish roads and rails are bad as well and a drive through Turkey will fail for the same reasons. The terrain is awful too.
e) Spain won't join the Axis to allow getting at Gibraltar, they are too dependent on western supplies of fuel for starters.
f) Vichy is dependent on American grain in North Africa and also won't join the Axis.
Despite all the bad assumptions and poor preparations made. Historically in OTL the German did well in the Soviet Union in 1941. Without the diversion to the Balkans the invasion might have started a week or two earlier with a bit more strength, Leningrad taken, less likely Moscow, but who knows maybe a Soviet regime panic or even collapse could have occurred.
The alternative is to continue to piddle around with Britain, all the time the British strength grows and the Germans can't do or take anything of strategic importance, the USA gets more involved all the time and by 1942 or 1943 the Soviets attack anyway.