How can I order these pages in this navigation bar on this old wordpress theme?

I suggest you change code of your greenday_get_menu_from_pages() function a little bit, just so that the results are not ordered by post_title which is default for get_pages(), but ordered by menu_order, which is what most “page ordering” plugins you have tested actually work with.

So here is one new line in your function:

function greenday_get_menu_from_pages() {

    $args = array('sort_column' => 'menu_order');

    $pages = get_pages($args);
    if ( $pages ) {

        foreach ($pages as $page) {
            $output="<li><a href="" . get_page_link($page->ID) . '">' . $page->post_title . '</a></li>';
            echo $output;
        }
    }

}

And then, you can install plugin such as Intuitive Custom Post Order, go to Settings > Intuitive CPO – set it up to be available for Pages as you can see on this screen:

Intuitive Custom Post Order Settings

And then, go to your Pages tab and simply drag and drop the entries there.

Side note: i’ve also removed the ampersand & for reference before your get_pages() call, not sure if that was any important, seemed rather obsolete to me.