I don’t know much about JQuery and scripts in general, but I’m learning that the order they’re loaded in the header can make all the difference. If you have a plugin that uses the JQuery library and doesn’t come with it, then the hook for wp_head needs to be below the load of the JQuery library in the header. This is because often plugins use the wp_head function to insert script code into the header.
So, move this bit:
<?php wp_head(); ?>
lower in the header file just above the
</head>
tag.