C'est exactement ca, tu lui dit lâche en mettant une friandise devant sa gueule et dès qu'il lâche tu récompenses et donne la friandise, après du le détourne avec un de ses jouets.
Tu n'as pas besoin d'apprendre à ton chien que c'est "mal" d'ailleurs un chien n'a pas de perception du bien et du mal, il comprend juste que tu est énervé après tel ou tel acte, pas plus. Il suffit de montrer à ton chien ce que tu attends de lui et que tu comprenne pourquoi le "mauvais" comportement est fait, ton chien aboie, pour quelle raison ? Une fois que la raison est identifiée tu peux supprimer le comportement gênant.
Si ton chien grignote les chaussons et les fils c'est qu'il doit s'ennuyer, n'hésites pas à lui fournir pas mal de jouets jusqu'à en trouver plusieurs qu'il aime vraiment.
Pour les cailloux continue sur le "lâche" avec friandises, désensibilise le un peu (par exemple si tu passe dans un chemin où il a l'habitude de grignoter tout et n'importe quoi garde son attention fixée sur toi en l'appelant, le récompensant et jouant), anticipe et joue avec lui dehors.
Pour le changement de croquettes il faut bien penser à faire une bonne transition (surtout quand on passe à des croquettes sans céréales) donc pas de changement brut surtout.. Il faudra bien mélanger les anciennes croquettes avec les nouvelles en augmentant la part des nouvelles croquettes petit à petit.