This is a Citizens2 addon! You can get it here: https://www.spigotmc.org/resources/citizens.13811/
CitizenHats v1.35
This plugin allows players to put any type of block on their NPCs as a hat! It is as simple as it gets!
Another common issue with these types of plugins has been solved with my version -- NPC hats removing themselves after a server reload/restart.
NPCs are now loaded along with chunks! No need to use /loadnpcs anymore, however, the option is there in case of buggery.
NPC Hat

Invisible NPC

Commands
/npchat - Adds the item in your hand to the head of a selected NPC
/loadnpcs - Loads the saved NPC hats & Invisibility onto NPCs after a server reload.
/npc invisible (/npc i, /npc invis) sets the selected NPC to invisible.
Permissions
citizenhats.npchat - Allows the player to add a hat to any NPC
citizenhats.loadnpcs - Allows the player to load all NPC hats onto NPCs.
citizenhats.loadnpcs.invisible - Allows the player to load all NPC hats and Invisible NPCs.
citizenhats.npc.invisible - Allows the player to set a selected NPC as Invisible.
Please feel free to let me know of any issues or suggestions for future updates.
Similar projects
Plugin →Let Me Despawn
Improves performance by tweaking mob despawn rules. Say bye to pesky unintentional persistent mobs.
25MSueta
JourneyMap
Real-time map used for mapping in-game or your browser as you explore.
14.7MSueta
Emotecraft
Create your own emotes in Minecraft.
7.5MSueta
Simple Tpa
A simple tpa plugin which sends requests
5.4MSueta
Common Network
Forge and Fabric Unified Networking Solution
3.9MSueta
Set Home
A lightweight plugin for players to set their homes.
3.8MSueta