Node/add within a block?
You can use Panels to display a node create form anywhere you like. With a bit of extra config, you could probably make it disappear when a node exists. Panels allows you to set visibility rules to determine whether to show content.