What version of Oracle are you using? Oracle thin
JDBC driver had a 4k limitation for blob binding, I believe they have fixed this in their latest version. I think OCI never had this limitation.
TopLink supported using a locator to write blob > 4k if you used the Oracle9Platform and define the mapping type as blob.
Unfortunately TopLink Essentials did not include this support, but EclipseLink does.