Been doing a bit more reading up. Yes you can pass a NULL as a value for a GObject to clear out an image in a Tree View.
This is an example taken from the tree view tutorial.
GError *error = NULL;
list_store = gtk_list_store_new (2, GDK_TYPE_PIXBUF, G_TYPE_STRING);
pixbuf = gdk_pixbuf_new_from_file("icon.png", &error);
/* pixbuf has a refcount of 1 after creation */
g_critical ("Could not load pixbuf: %s\n", error->message);
gtk_list_store_set(list_store, &iter, 0, pixbuf, 1, "foo", -1);
/* pixbuf has a refcount of 2 now, as the list store has added its own reference */
/* pixbuf has a refcount of 1 now that we have released our initial reference */
/* we don't want an icon in that row any longer */
gtk_list_store_set(list_store, &iter, 0, NULL, -1);
/* pixbuf has automatically been destroyed after its refcount has reached 0.
* The list store called g_object_unref() on the pixbuf when it replaced
* the object in the store with a new value (NULL). */
Also using a single blank image will not consume that much memory as what you should be doing is reusing the same image and what GTK will do is add to the reference count how many times it is used.
With out seeing any of your code it is very hard to tell what is going on and why you are getting the errors.