Advice: change the name of the author by his role in a comment
Module VS preprocess function - modules can use preprocess functions as well. I guess that the question in your case is whether or not to do the changes in a custom module or theme. It's up to you, but generally speaking, keep the specific UI improvements in the theme and let the module do the hard work you will need in any case (if you change the theme for example). Also, it's better to pack the things you might need somewhere else in a module as it's easier to drop it to another site.
You can load the user object with user_load($uid);. This will also load all roles with role IDs and names. I suggest installing Devel and calling dpm($user); to have a better understanding of what you get in the user object.
If by request you mean database request - yes, it's alright, if there's not a way to do so already. As I mentioned in 2. you can use user_load function - this will reduce the code and also load the user object from cache. I think that Drupal already called user_load for rendering the comments, so calling it again will just get everything from cache and won't impact performance.


Hope this helps.