The gemara concludes according to the ran the assumption of the gemara all along that if the gidulin are mutar then they are definitely mevatel the ikar of issur, applies only in that case where the ikar is assur and the gidulin are mutar. When trying to be mevatel issur in heter, it doesn't matter if he is going through 'tircha' to be mavatel, because it is easy for issur to be batul in heter. But when the ikar is heter and the gidulin are assur, and we are trying to be mevatel the ikar in the gidulin to make it assur, then it depends: if he is being 'toreiach' to be mevatel then it will become batul but if it is simply happening by itself then the heter will not be batul in the issur. The ran explains the rationale behind why it is easier to be mevatel issur in heter, than to be mevatel heter in issur is "שהאיסור דרכו להתבטל ולא ההיתר". This means to say that "heter" is the absence of any issur, whereas issur is a status ("chalos"). When trying to be mevatel issur, all we need to do is remove the status from the issur to make it like the heter. But when trying to be mevatel heter in issur, we are not removing heter status, rather imposing issur status on the heter, which is obviously more difficult to do.
Perhaps the entire concept of being mevatel heter in issur, is only d'rabonon and that is why we only allow the bitul if he is toreiach to be mevatel (it is very hard to accept that the sevara of toreiach levatel should make a difference on a d'oraysa level), but on a d'oraysa level heter cannot possibly be turned into issur (except when the issur puts ta'am into the heter, where there is a discussion about chaticha na'aseh neveila). However, the Mahartz chiyus points out that we do find cases where the heter is batul in the issur elsewhere.