How to force jQuery to load as a first script in header in frontend?

All JS that is properly enqueued will be added to your header at the very point where you, or the theme designer, respectively, included wp_head().

Ideally, you should also enqueue your custom script(s) the same way and make them dependent on jQuery – WP will then naturally load them after.

If however you want to (as I assume your are doing now) include JS manually in the header, then do so simply after wp_head(), if the JS depends on jQuery.