image copy produces a binary copy of the data, including all the internal db2 data (like object id, position of data within tablespace, etc.).
If the tablespace was not reorganized and all the data was in bad order within the tablespace, recovering to the imagecopy will put the tablespace in the same bad reorganization state.
When you drop a table and recreate it without any changes to the tabledefinition, the table will get a new obid by db2.
The old imagecopy still contains the obid of the table before dropping the table. Without translating old obids to new obids you can not use old imagecopies.
Unload contains the data in a more readable way. The data is structured in a way a load-utility may use it.
In case you want to move the data to different environment unload is probably your choice. Unload is slower though and has other drawbacks.
Yes you can use both unload and imagecopy because they target different situations.