I have to upvote the question as it looks like you have done some reading.
With wooden posts I usually do put rock in the hole first but all of my posts are set prior to the concrete being added so that may be the reason some say put the post on rock, I use the rock to prevent the concrete from mixing with the dirt in the bottom of the hole. If in heavy clay there will be water down in the bottom and rock or concrete won’t stop that it will be wet.
As far as metal it depends on the job a long line of posts I will have preset just as the wooden posts but for just a few I might pour the concrete first and then set the post or anchor plate.
Can you get a little extra height using the cement as part of the post? Not really.
Ok you can get a little maybe a foot but not 2’ as your example. Concrete has no sheer strength I have seen folks try do do exactly what you are asking at the coast to have the concrete break below the ground and allow the fence to be pushed over.
I thought the posts would break at the ground level before the concrete but I have seen this several times in high wind areas with sandy soil. So if in a coastal area and you want a 6’ fence don’t skimp and buy 8’ posts go with the 10’ it may even be a code requirement in some areas.
If you have really good soil it may work fine to get a little extra height but be cautious about wind loading and your soil type you don’t want to put a lot of $ and work in to have a few posts fail and cause a lot of repair work.