Is there any down side to creating objects from reusable parts?
I don't think this will be a problem anywhere. As long as you make sure the objects are properly parented to one another, or even better (at least inside Blender), to an empty, you should be fine. Your game engine will, of course, need to be able to deal with object parenting properly, but if it doesn't... you probably don't want to use it.

@metaphor_set raises a good point in his answer. You can check this Unity question where they discuss this; however, I still believe that reusing objects will lead to a better workflow. That said, you should really think (aka, benchmark) whether this could become a problem, and, if so, you could, before exporting or, possibly, before applying materials merge the various objects into one, to counter this problem.