See, the problem is in the "modem firmware" for iPhone 4S. "Modem firmware" is the internal software that controls the phone or cell radio portion of the iPhone, and isn't compatible with previous iPhones. Nor is the "modem firmware from previous iPhones compatible with the iPhone 4S, because the 4S uses a different cell radio chipset, it is a hybrid cell radio. Also, the cell radios between the previous GSM iPhones are different manufactures, since the iPhone 4S was a departure from cell radio manufacturer Infineon, which adds to the modem firmware incompatibility.
The 3G/2G toggle API, most likely would be part of the modem firmware. When the GSM iPhone 4 gets iOS 5 installed, it a modem firmware written specifically for the Infineon cell radio chipset, while the iPhone 4S on iOS 5+ gets modem firmware specifically designed around the Qualcomm cell radio chipset. The question that should be asked is if the Qualcomm radio chipset hardware can even support such a 3G/2G toggle. Most likely it can't and may have been an oversight by Qualcomm or a technology hurtle that couldn't be overcome. There are competitor hybrid phones that also use the new Qualcomm manufactured hybrid radio chipsets. The key would be to find out if they have a GSM 3G/2G toggle like ordinary EDGE/UMTS/HSPA phones.