I love how vanilla this feels. Enchanting table seems like a better suited block, but luckily we have config for that.
I have tried to adjust the cost to match the experience you would get from the bottles. Those are the results after filling and using 64 bottles:
14 cost: 30lvl 0 points -> 19lvl 5 points -> 25lvl 17 points
10 cost: 30lvl 0 points -> 23lvl 4 points -> 28lvl 11 points
9 cost: 30lvl 0 points -> 23lvl 68 points -> 28lvl 74 points
8 cost: 30lvl 0 points -> 24lvl 55 points -> 29lvl 30 points
7 cost: 30lvl 0 points -> 25lvl 37 points -> 29lvl 106 points
I then went ahead and bottled 30 whole levels. Ended up with 30 levels and 5.5% towards the next level, so the cost of 7 can give a bit of extra exp, but realistically that's equal to killing a zombie or two and you still lose all the glass in the process. I would assume it to be a good cost value if you want to let your players store experience without penalty.
Xp Bottler [1.15.2 - 1.16.x] 1.0.2
Convert xp points into xp bottles