GSM module working when powered by laptop via USB but keeps restarting when powered by battery
A USB device can only draw 100mA by default, during enumeration you need to request the maximum of 500mA for USB 2 and below during device enumeration. So when connected directly to the power pins you can only draw 100mA. I couldn't see a current specification for that board but most GSM modules are closer to 500mA than 100mA.

For a Energizer 522 Alkaline battery the maximum current draw appears to be around 500mA so that might be one option although the lifetime will be relatively short. PP3 batteries generally don't have very good current draw characteristics, personally I'd probably look at using something rechargeable like 6 x AA NiMH cells, or maybe AAA if size is a bit of an issue. LiPo packs that are commonly used in remote controlled cars etc may be another option.