I did that for one piece of mail; it came back to me 3 times before I gave up and delivered it to the house on the next street over. Despite the notes I wrote on the envelope. And the address was correct for that house, and quite clear.
A postal worker later explained to me what the problem was: all mail now has barcodes on it. Business mail & mass mail will come with it printed by the mailer, for other mail (like a card from your grandmother) the post office prints it onto the envelope at the sorting center. Actually, it’s done remotely – the un-barcoded envelope goes thru a scanner, typed/printed addresses are read via OCR and the barcode inkjetted onto the envelope, for handwritten or unreadable ones an image of the envelope is transmitted to a low-wage worker at a PC in India or somewhere, they read it & enter the address & zipcode, that’s transmitted back to the sorting center while the envelope is still moving through the sorting machine, and is inkjetted onto the envelope. The rest of the sorting process is all done from those barcodes. Has to be, to handle 43 million pieces of mail per day.
But if that worker makes a typo – like entering 29th Avenue instead of 30th – the barcode has a different address than the printed address. And from then on, the postal process will use that (incorrect) address. If you just drop it back into the nearest mailbox, it goes to the sorting center, the machines see it already has a barcode on the envelope, so it is sorted using that and sent out the next day – right back to you!
What you need to do is take a marker pen, and black out the barcode on that envelope. Then someone looks at the address and enters a new barcode, and it gets sorted to deliver to that address.
Besides, since the Post Office has removed nearly all the mailboxes around here, it’s a lot further to find “the nearest mailbox” than it is to just deliver it to my neighbor’s house.