Another possibility could be what you've already said: Due to a defect of the swimbladder there's some air trapped in it, and the fish is simply too light because of that.
A swimbladder defect can be caused by diseases, but can also be a physical effect, i.e. due to too much oxygen. Did this happen after a water change or after feeding pellets or flakes?
Unfortunately, I don't if it's possible to help him get rid of the trapped air, but found this on the web:
begin quote:
You can burp larger fish manually, though I'd avoid it unless fish is starting to fail. This can be done by applying gentle pressure to the underside of the fish, from just in front of the anal duct, and sliding finger forward torward to the mid section of the belly. This can often realease gas trapped in the swim bladder or gut. This should only be done in emergency and carefully. If successful, you will often hear an audible 'burp'. You should then use a little stress coat as your handling of the fish will effect its' slime coat.
end quote.
------------------
Gisela
moppel@gismo.owl.de [This message has been edited by gisela (edited 03-16-2002).]