The relevant EU regulation (article 3(5) (c) of the Schengen visa code) is pretty clear:
The following categories of persons shall be exempt from the requirement to hold an airport transit visa provided for in paragraphs 1 and 2:
(c) third-country nationals holding a valid visa for a Member State which does not take part in the adoption of this Regulation, for a Member State which does not yet apply the provisions of the Schengen acquis in full, or for Canada, Japan or the United States of America, when travelling to the issuing country or to any other third country, or when, having used the visa, returning from the issuing country;
Official webpages from the German authorities explaining these regulations (e.g. germany.info) confirm this. So if your visa is indeed valid, I don't see why you would need a visa to transit in a German airport.
Because of the way US visas work, many people have the opposite problem, they are in the US legally but don't have a valid visa anymore. But there is no reason for the German authorities to care about (or even be aware of) all the niceties of US law.
Note however that your visa situation should be checked before you leave. The database used for that also contains the same information but you could try to contact the airline to confirm they would let you board the plane with the documents you have.