Our neighbors yard is elevated and they water their yard a lot. The water flows over into our vegetable garden and floods it. I would like to add a barrier. Some ideas have been slim pavers with a plastic sheet, or a tree root guard. I looked at grass barriers but they are only 5-6 inches wide - this will need to be at least 12 inches to go into the soil and be tall enough to stop the water flowing in. What could I use as a good barrier?
You need to be careful how much you impede the natural flow of water off your neighbor's yard. If your property is downhill of your neighbor's, the water flows naturally from his property to yours. You could find yourself in legal jeopardy if you dam up or otherwise prevent that natural flow.
On the other side of the coin, your up-hill neighbor can not, and should not make changes to the topography of his property that would increase the amount of runoff onto your property.
There a legal doctrine involving this kind of thing, but I can't remember what it's called. Here's one reference I found on line.
A small trench may not help, but most certainly a full-on dry well with some French Drain buried along the property boundary will do the trick. That's a lot of work, but it is the solution.
Keep in mind that your low veggie garden will get flooded every time there's a serious rainstorm, due to the slope of the land. You might as well find a solution that work regardless of your neighbor's behavior.
Mulch. Put a pile of fine wood mulch just inside your fenceline, about 2' wide and 6" high, it will serve as a physical barrier but allow the water to soak in. That way you allow the water to flow onto your property and provide a simple place for storage. If you put a thick layer of mulch on your garden it will soak up the water and release it slowly into your garden, turning a problem into an opportunity.
You can go high or low, but I'd also think about partnering with your neighbor to solve your problem as a first step. Use of potable water to grow turf grasses is about the most ignorant thing anyone can do with it, but notwithstanding that, no turf grass requires THAT much watering, so you might encourage him to allow it to grow a bit longer, use a mulching mower, and water it less to condition his lawn to adapt to a more reasonable watering schedule.
If the neighbor is an unredeemable ass and completely belligerent, I would move and rent your old home to folks who enjoy midnight suppers and roasting goat in the front yard while listening to overly loud music that doesn't fit with your neighbor's, ahhh, ethic?
Ignoring that and staying put, you could install a French drain (geo-textile lined trench filled with washed gravel surrounding a perforated piece of ABS or PVC piping run to a sump or daylight). If you use a sump and pump solution for the outfall you can route the pump discharge wherever you need.
Typically neither of you are legally permitted to substantially alter any natural drainage paths without some sort of engineered plans and a permit, and most jurisdictions will still hold folks responsible for things like chemical drift from spraying, over application of economic poisons, and over-watering, so maybe check with your county storm-water management or State agricultural office if you can't get the neighbor to cooperate.
Another solution would be to construct either a raised bed, using lightweight concrete (Youtube has some great DIY tutorials on the subject) or you can build hugelkultur beds to better utilize the excess moisture while keeping your garden plants from being overwhelmed with constant wet feet. https://www.youtube.com/watch?v=HinNgUdPkv4
Try building a small earth mound with a slight depression along the ~20' fence line (seems like there is already a depression). Depending on how much overwatering is occurring it could give the ground enough time to absorb it. Bonus points for finding plants that can handle excessively wet soil and planting them in the earth mound.