The actual number of u-boats built by year:
1935 (14)
1936 (21)
1937 (1)
1938 (9)
1939 (18)
1940 (50)
1941 (199)
1942 (237)
1943 (284)
1944 (229)
1945 (91)
http://uboat.net/technical/shipyards/
If the Germans had only had the Type XXI/Me262 in 1939, things would have been different! Possibly, but nothing happens in a vacuum. It has been pointed out that if the Germans this, then the Allies that, so there's no need to go over it again. It has also been argued that the Germans could not possibly have produced more u-boats, and that if they could and had it would have taken from other parts of the war effort, since resources are finite.
I agree with all of those, so I'm not adding anything new, just summing up.
[edit] As for "never had more than 30 boats at sea", in 1943 the average was indeed right around 100 boats at sea for some months. Here is a listing of number of boats at sea and number of merchants sunk.
http://www.mistari.com.au/u-boats/sh..._per_month.htm
Note that even with that many boats at sea, the number of merchants sunk
per boat never exceeded 6, and during the time when the most boats were available the average only once reached one merchant per boat.