the only time you’ll get 10 items from a gym is if it’s the 10th spin in a row, your team color and gold badge.
If it isn’t the 10th, you’ll get 6-7 under the same circumstances.
That said, spinning gold gyms of your team color gyms so much items that getting potions should be doable.
Also, raid more and battle less gyms. Raiding is very good for potions and revives. as everyone knows. I have never had any issues with potions or revives, i have so many i have to toss some away each day.