Как лучше организовать комментарии к разным модулям?
Используйте полиморфное отношение https://laravel.com/docs/5.4/eloquent-relationship...
В доках прям ваш пример описан. Внешних ключей, правда, не будет. Но зато велосипед не нужно будет изобретать.
Вот еще почти готовый вариант: https://github.com/laravelista/comments