Is there a way to publicly raise Bitcoin funds?
There is plans to implement conditional transactions which would do some of the things you indicated.   That hasn't been implemented yet.

To do what you want would require creating website from end.

For example you could display current balance &amp; goal as well as the number of donators.  When someone donates you could have them provide a "return address" (in case it is different) that can't be changed and a return password (which you encrypt).

While you said you want to use Mt. Gox I don't see how that would increase trust and it would make automating deposits and returns much more difficult.

In short it can be done but there is no easy automated way to do it within the Bitcoin protocol so you will have to custom build a lot of the functionality.