In the searchbox in your gmail use
label:unread to display all unread mails. When you want to filter this down towards one or more filters, append the search query with
After that simple (keep using) use the button "More" and select "Mark all as read". This will mark all email (on current page) as read, and automatically UPDATE the browser with a new series of unread mails, to keep matching the search query still active.. So keep doing that until you're through. Simplest way, with least amount of actions.
Make sure the amount of emails per page is maximized to make things easier.