How to anonymize submissions and ensure each student gets exactly one chance to submit?
In an online file sharing system (e.g. dropbox, google drive, onedrive...) create as many folders as you have students. Create a share link for each folder with write access.
Send the share links and the list of student emails to a trusted third party, and ask them to randomly assign a share link to each student.
Tell the student to upload (anonymously) their submission to the shared folder they were assigned to.
Upload your own feedback in the same folder.

It's a bit of a hassle but it works. There is a trusted third party involved, but you cannot get around that (just like for your exams proper, there is a trusted third party involved, namely, the online system).

Federico Poloni asks why a third party is strictly necessary. As this is a rather trivial question, I do not expect to be able to find a citation in the literature, but here is a mathematical proof. For simplicity, assume that there are two students, A and B. The instructor must give some information to A and B such that

the instructor can verify that no student submits the same work twice;
a student cannot impersonate another student to get around this restriction;
the instructor must be able to provide feedback regarding some submission and ensuring it arrives to the correct student.

Because of 2, the instructor must give some different piece of information to A and B to &quot;sign&quot; (in a cryptographical way, for example), their submission. A different key must provide a different signature because of 3, but the same key must always yield the same signature because of 1. Without a third party, the instructor must know what key is given to each student. It is then trivial to reuse that information to know what key yielded what signature, which can be use to breach anonymity.