I'm unable to reproduce you're content_folder__unregister_content_type problem:
openacs4=# select * from cr_folder_type_map;
folder_id | content_type
-----------+------------------
-100 | content_revision
-100 | image
-100 | content_folder
-100 | content_symlink
-200 | content_folder
-200 | content_symlink
-200 | content_template
2201 | content_folder
2201 | content_revision
2201 | content_symlink
2201 | image
2202 | content_folder
2202 | content_revision
2202 | content_symlink
2202 | image
2203 | content_folder
2203 | content_revision
2203 | content_symlink
2203 | image
2204 | content_folder
2204 | content_revision
2204 | content_symlink
2204 | image
(23 rows)
openacs4=# select content_folder__unregister_content_type(2204,'content_folder','f');
NOTICE: identifier "content_folder__unregister_content_type" will be truncated to "content_folder__unregister_cont"
content_folder__unregister_cont
---------------------------------
0
(1 row)
openacs4=# select content_folder__unregister_content_type(2204,'content_revision','t');
NOTICE: identifier "content_folder__unregister_content_type" will be truncated to "content_folder__unregister_cont"
content_folder__unregister_cont
---------------------------------
0
(1 row)
openacs4=#
When was the last time that you updated from cvs?