rather than cycling to Dunoon from Portavadie you could just go round to Colintraive and get the ferry on to Rhubodach and cycle for the Rothesay ferry to Wymess bay. Though i dont fancy Wymess Bay to Ardrossan on the bike myself.
Alternatively in summer you can get a ferry back to Ardrossan from Campbeltown