^This^ is your problem.
20 sets should only take you 45 minutes or even less. Try getting your rest periods down to 30secs. And you don't need to stretch before you work the muscle. Do your warm ups, lift, then go home and stretch while you watch the news if you want to get out of the gym.