Yes, it's possible to publish only a component instead of full page.
In order to do this you need to use the OOTB functionality called Launches .
With Launches you can define a copy of your actual page which can be modified and promoted in a specific date.
A launch is created to allow you to make changes ready for future publication (while maintaining your current pages).
You can find here the common use cause which can be achieved with the usage of Launches:
"For example, the seasonal product pages of your online store are updated quarterly so that the featured products align with the current season. To prepare for the next quarterly update, you can create a launch of the appropriate web pages. Throughout the quarter, the following changes are accumulated in the launch copy:
Changes to the source pages that occur as a result of normal maintenance tasks. These changes are automatically duplicated in the launch pages.
Edits that are performed directly on the launch pages in preparation for the next quarter.
When the next quarter arrives, you promote the launch pages so that you can publish the source pages (holding the updated content). You can promote either all pages, or only those that you have modified."
I think that you can use this OOTB functionality in order to plan the publish of a single component without publishing the whole page and maintaining the sync with the source page.