With BLOCK you can specify the duration and peak of the event response. GAM can be used if the experiment is of an event-related type with an instantaneous duration, practically one TR or less.
In your case BLOCK seems better due to varying durations across event types.
Gang