Ah, I see, date of the physical project, not date of the project post type. You might reconsider using taxonomy terms to manage project dates. It’s much easier to order posts by meta values (aka custom fields) than it is term names. If you look at the “orderby” doc of possible args, you’ll see you can use “meta_value_num” but there is no equivalent “tax_term_name” or similar.
If you really want to order by term name, you’d need to create a custom SQL query. If it’s composed properly, you could replace the WP_Query’s SQL with your own version through the “posts_request” filter. “Composed properly” means your query must return an array of matching posts just as the original WP_Query SQL would have done.
If you do decide to organize project dates as meta values, you can set an appropriate “orderby” arg through the “pre_get_posts” action like we’ve already discussed.
A third option is feasible — edit each post’s date to reflect that of the actual date of the project. It’s common for building projects to span multiple years, yet a date field can only reflect one date. Unless you start tracking both beginning and completion dates, you’ll need to decide which date to represent. Logical dates IMO would be either breaking ground or substantial completion. Probably doesn’t matter which, as long as it’s consistent.
What to do with projects that are in progress or never even started? You can assign non-numeric values even though a year number is expected. Related posts will either end up sorted first or last, depending on what sorting algorithm is used.