When you take a look into the console after triggering the click you'll see an error:
Uncaught TypeError: Cannot read property 'vertex' of undefined
This undefined object is a PolyMouseEvent . This object will be passed to the click-callback when a real click occurs. But when you trigger the click programmatically this object is missing, what forces the error above(and somehow stops the binding of the click-listener after re-initializing the map ).
solution: pass an empty object as argument to the click-callback when you trigger the click programmatically:
google.maps.event.trigger(polygon[nomor], "click", {});