I thought of that kind of solution, the problem is that say you have an image that is 30 pixels wide, and another is 64 pixels wide with the image of the character on the far right, that means your maximal width would be near 128 pixels(for the character to be centered), so you'll be using 4 times the required space for those 30 width sprites. It's seems a hell of a waste :/
if you have 2 images, 30 pixels wide, and 64 pixels wide. You would only need to make your 30 pixels wide image to be 64 pixels wide and center appropriately inside there. (thus youd go from 94 pixels(30+64) to 128 pixels(64+64), thats 36% increase, not a 4x increase? Also, depending on the type of image format/compression, empty/transparent spaces, do not 'usually' contribute nearly as much to the filesize, as one with scattered/random colored pixels, due to compression, even in a loseless format. So even a 2x image, with only added empty white space(transparent), does not translate to 2x filesize.
Could you upload an example of your photos? It would GREATLY help assist you in finding the optimal solution.
Also with a nearly 2x width. What exactly type of image is this? Perhaps it would be better served as multiple components linked together?
i.e. a spider body is 1 image, and the legs are separate images instead of a super wide spider image.