Pagenavi with archive page

It always displays the first page because you tell it to: 'paged' => '1' 🙂

That said changing main query and especially pagination inside a template is inherently unreliable.

For proper customization of such you should always be adjusting main query before template is ever reached via appropriate hooks, typically pre_get_posts.