I would use a LOW dosage of Epsom salt. You can get this at supermarkets and pharmacies (but not petstores). Look for 100% magnesium sulfate. (No dyes, perfumes or additives.) Any brand is OK (Walmart, CVS, Walgreens, Publix, etc.)
1) Do a water change to get the ammonia down.
2) Put a small amount of tank water into a cup.
Stir in 2.5 teaspoons Epsom salt. Stir until the salt is completely dissolved.
3) Slowly, over the course of about 30 minutes, pour the solution into the tank.
This will provide a total dosage of 0.5 teaspoons Epsom salt per gallon.
Epsom salt has a fluid reducing and laxative effect. It should help with his buoyancy issues. It can take a day or two to work, so you may not see 'instant results.'
Read the list of ingredients on his food. Foods that contains a lot of grains/filler can cause constipation, bloating and buoyancy issues in some Bettas. Look for words like: wheat, corn, soybean, gluten, etc. If yours has a lot of these, consider switching to a high-protein pellet. On this forum, New Life Spectrum betta pellets and Omega One Betta Buffet pellets are highly recommended.
Also, freeze dried foods can cause these issues, too. So you may want to limit the amount you feed him. Or, you can look into feeding some live or frozen foods.
If the 0.5 teaspoons Epsom salt per gallon isn't effective in about a day, let us know. If 0.5 teaspoons/gal doesn't work, you can repeat the steps listed above. This will double the dosage to 1 teaspoon per gallon.