Hello I'm triyng to do the exact same thing, so after 2 days of researching I found this site:
https://www.gamergeeks.net/apps/minecra ... nted-books (Please don't forget when you enter the site to select "Java 1.12.2"
Here you use commands to give you a custom enchanted book, and after you select the enchanted book you want for example "Aqua Affinity" if you go to "Text" you can change the Name and the Lore of the book for wathever you want, for example instead having "Enchanted Book" you can have "Aqua Affinity 1".
To use that in shopkeepers, you need to copy this part "[{id:aqua_affinity,lvl:1}],display:{Name:"Aqua Affinity 1"}}" and paste it in the "shopItems.json" on "nbtData" of the enchanted book you want.
One example of an Aqua Affinity 1 enchanted book is:
{
"id": "aqua_affinity",
"name": "minecraft:enchanted_book",
"nbtData": "[{id:aqua_affinity,lvl:1}],display:{Name:"Aqua Affinity 1"}",
"buy": 10000
}
I hope I was able to help people to use the custom Shopkeepers of Pixelmon.