The checkbox method meets user expectations
One of the most important things to do in any interface development is not confuse the user. Relying on established design patterns, such as checkbox for toggling independent settings, minimizes this risk. Given the purpose of the form, you should keep the checkbox interface because users will understand it.
You should continue to explore grouping
Your stated concern is that this list of events runs on too long, which could make it difficult for users to examine. In order to reduce the list to a more manageable size, you will have to group the list items somehow. Since you are having trouble coming up with groups, you should run a user test to find them experimentally.
- Write out each of the list items on an index card.
- Shuffle the cards up randomly.
- Give this deck to a representative user, and ask her to cluster related cards together. She doesn't need to name the clusters, and you should let her arrange the cards into as many or as few clusters as she deems fit.
You'll need to find three or four people to do this activity with, and make sure that they are familiar with any specific terms used in the list items. These people don't necessarily need to be current users of the application; in fact, it is better that they are not familiar with the current implementation of the application, because that could bias the results. Each activity will take a few minutes at most, and at the end you can look at all the clusters you found and neaten them up into categories.
By getting representative users to build your categories for you, you'll have a better chance of structuring the interface in a way that your actual users will find easy to work in.