If you go with crushed rock, you'll want to have a physical border to keep the rock out of the lawn. We have crushed rock bordered by granite cobblestones / belgian block, which works well to keep the rock and lawn separated. It's important that the crushed rock not be higher than the cobblestone border, or you'll have rocks spill out into the lawn. However, if the top of the rocks are no higher than the top of the cobblestones, then very few rocks will escape. The occasional one that does jump out into the lawn can be easily picked up and tossed back when you mow. We chose to bury the cobblestones so that the top of the cobblestones is at lawn soil height, so that mowing is simplified by just running the mower wheels right on top of the row of cobblestones. If you're interested in a picture, I can probably take and post one so that you can see what we did.
The cobblestones aren't cheap, but they'll last a long time.
For keeping weeds out of the crushed rock, we've found that it's important for the crushed rock to be large (2" screened is what we have - bigger would be even better!), and deep - at least 4 inches in depth, and preferably more. In order to get that depth of rock in that area, you'll need to dig out 4+ inches of mulch. The crushed rocks need to be big enough to let sand and dirt that blow in percolate down through the voids between rocks, rather than form a soil layer amidst the top layer of rocks. Pea gravel will look nice for a year or two, but will then load up with sand/dirt/silt and you'll be cursing yourself every year in having to weed the crushed rock, which is no fun. We had to hand-weed our former finer crushed rock for many years before changing our crushed rock approach a few years ago -- weeding crushed rock every month or so is no fun!
Crushed rock does have the advantage of being relatively easy to blow leaves off of, presuming you have a leaf blower. A leaf blower doesn't work well to blow leaves off of mulch, as the mulch gets picked up and blown, too.
If you ever decide in the future to change the area from crushed rock to something else, such as a flower bed, you'll be cursing the decision to have installed the crushed rock. First off, the crushed rock is heavy and difficult to remove. It's very hard to shovel and will require a lot of manual labor to get it out. Secondly, unless you put an excellent landscaping fabric on top of the excavated dirt before you install the crushed rock, you'll have a tremendous challenge actually getting all the rock out -- the rocks will work their way down into the soil, and you'll have a difficult time getting them all out. (Been there, done that, got the T-shirt.) I'd highly suggest putting a heavyweight landscaping fabric on top of the excavated soil before installing the crushed rock, to enable the possibility of getting the crushed rock all out in the future if you decide to switch to vegetation in the future (whether flowers, shrubs, or lawn).
On the other hand, an advantage of the crushed rock is that if you do it right once, it will last a long, long time with no maintenance other than blowing off leaves. Mulch will require periodic renewal; we supplement our mulch beds every year.
We have areas of both crushed rock and traditional mulched beds in our landscaping, and they each have their benefits.