Tim Hall has a pretty canonical list of string aggregation techniques in Oracle. Unfortunately, I don't believe that any of them are going to work for you if the result needs to be able to exceed 4000 bytes and you cannot create any sort of object in the database and you're using 10.2. The sys_connect_by_path
approach would be the only one worth testing but that's almost certainly limited to 4000 bytes as well.
If you have access to the various XML functions, you could potentially use the xmlagg
function to produce a CLOB.