I'm not sure why this doesn't work, but you can force the multiplication to take place in the larger group G by replacing h with G(h), like this:
sage: [(G(h)*g) for h in H for g in G]