This is just nuts. If you disregard the curly braces each of these guards are just two lines of code. When you place them into a function definition they each become 3 lines of code. Just so you can replace them with single lines in the original code.
That isn't software engineering. That is religious fanaticism.
E.g.
guard item.count > 0 else {
throw VendingMachineError.OutOfStock
}
Is a very low complexity statement. One comparison is made and an enum value is thrown. You are gaining no clarity by placing this inside a separate function.