The problem of compressing a stiff spring that is held in place by a pin is common problem. I solve it by fabricating brass punches that allow the spring to be compressed and provide a slot to insert a secondary slave punch to hold the spring in place while the required pin is then placed while displacing the slave. Some pins just fall into place and are held by the spring tension alone, so no secondary punch is needed to complete the task.
The problem is always how to stabilize the cylinder pin that has to push a heavy spring until the cylinder is within the tunnel of the shaft so it is controlled for the remainder of the compression into position. The solution is separate the difficult task into simpler controlled steps.
For your problem, take a brass punch with a diameter that will just barely fit inside the spring channel, then make a cut in the tip of the punch of sufficient width to accommodate the pin that needs to be placed.
Secure the cylinder in a padded vise, compress the spring with your new punch until you see the slot of your punch tip thru the pin aperture.....drop a slave pin punch into the pin aperture to retain the spring.....remove your punch, place the retaining cylinder with the pin hole indexed to align with the cylinder shaft pin hole.....with your brass punch, push the back of the cylinder pin up to your slave pin, pull your slave pin and compress the spring just enough to show the alignment of the holes, drop your retaining pin ! Voila.
A few examples for illustrating.