How to punctuate an example indicated by "say"
It should be punctuated as in your example, with commas around the 'say'.
They are parenthetical commas, because they perform the same function as putting brackets around 'say' - "If you have (say) a bucket..." They are there to prevent the problem you correctly identified, by indicating that 'bucket' is not the object of 'say'.
As you say, the commas as you have them probably represent how the sentence would be typically spoken, given the convention of a comma representing a sentence-internal pause.
But if you think it looks a bit comma-heavy, then you could use dashes instead of commas to delimit one of the interpolated clauses. For example:
If you have, say, a bucket — that you would like to fill with water — then ...