How to make an item only break certain blocks after applying the enchantment and unbreakable parts of the command? [duplicate]

Solution 1:

In Adventure Mode you can only break blocks featured in the CanDestroy tag of the held item. Otherwise the character won't even try to break the block. So just set the player to Adventure Mode.

Solution 2:

I'm not sure what you are asking, but I noticed that your command has some errors. Here's the revised command:
give @p stone_pickaxe 1 0 {display:{Name:"Level 1 Pickaxe",Lore:["A basic pickaxe."]},ench:[{id:32,lvl:1}],Unbreakable:1,CanDestroy["minecraft:stone","minecraft:stonebrick"]}