The GSM modules draw 100mA to 300mA in normal operation, but when an network intensive operation takes place, they draw around 2A in short pulses. So 1A is not the maximum draw actually. MCU draw hardly around 10mA in normal operation at full frequency like the STM32L series.
But you can use sleep modes of GSM modules where they draw only 1mA waiting for a call or a SMS or a wake up signal.
Similarly MCU can also be put into low power run modes where their consumption can go down to 100uA.
The large current draw is sustained by providing strong power sources like batteries or high current switching regulators like LM2596 or LM39302 etc.
The 3.7V batteries normally provide 3.7V to 4.2V. They reach 4.2V when fully charged and drop to 3.7V slowly as current is discharged to the load.
You will get MCU that can run at 1.8V to 3.3V also. Its wiser to use a 3.3V MCU as you wont need a boost circuit to provide 5V from a 3.7V source. Just use a 3.3V LDO to drop 3.7V to 4V battery voltage to 3.3V or whatever voltage is needed by MCU.
The device up time depends on battery capacity and current draw. My VALTRACK-V2 GPS tracker can run for 72 hours on single 1000mAH battery in SMS tracking mode with sleep enabled.
The MCU which i use has 2 separate UART’s. No mux needed.
GPS modules can catch signal through plastic casings also. The signal from satellites can pass through them to some extent. But, Just don’t use metal boxes.