This isn't anything flash or fancy . . . . . . but I just work three times in normal cast off for every two stitches.
So for a K1 P1 rib I cast off by K1 in the loop below the stitch, K1, pass 1st stitch over, P1, pass stitch over, K1 in the loop below the stitch, pass stitch over, K1, pass stitch over, P1, pass stitch over, etc. This doesn't require changing needle size and it is quick and easy, and gives just enough stretch for my socks without too much of a lettuce leaf edge. Like I said - not fancy but it works for me.
Have you considered knitting some ribbing elastic into the last row and cast off (the very fine sort used by machine knitters) or is that "heresy"? lol
I also knit toe-up socks because I can never get the grafting of the toes right. I tried all the sewn top finishes but I always seem to get things twisted about half way through. (sigh)