power dies at mid-range... please help!

From a stand-still if I stomp the gas the car wants to get up and go, tires start spinning and such, but only for a short while before what seems like it just gives up. any time between 1500 - 2200 rpm range it's great, but after that it's a grandma car... :P I'm wondering if it could be off timing and the vacuum advance is causing it to advance too much? I havent been able to get it up to reasonably high RPM's either... (may be due to 2.97 gearing...) but I think it should have much more power that i'm gettin out of it... Suggestions anyone? it's a beefy 318 (possibly stroked im not sure) with 340 X heads and 340 intake, running to a 904 (which was rebuilt with a shift improver kit(not by a professional, but by high school kids)) to 8 3/4 SG rear with 2.97 gears