I don't think that tibbles support quite that operation. I.e. you can logically subset and supply a single value to go to all those positions, but you are wanting multiple values.
I think the dplyr way to fill NA values from one table with corresponding values from another in your example setup would be like this :
rows_update(rowid_to_column(t1),
rowid_to_column(t2)) # |> select(-rowid) ## optionally remove the rowid that was used.