A [STUCK] thread is a WebLogic managed thread that WebLogic has decided has been busy for too long. This might be quite normal for a background process or batch process. It does not necessarily indicate a real problem. The object allocation and subsequent GC is also normal behaviour.
So is your thread really stuck or is it just running for longer than WebLogic is configured to expect? You can use WebLogic thread pool configurations and the CommonJ API to avoid threads being marked as [STUCK] by declaring that they are long running (and assuming you're using a new enough version of WebLogic that honours this - it used to still mark them as [STUCK]).
If your thread is truly stuck it is more likely to be to do with your code than an object allocation / GC issue.