I had a betta who loved pushing around little marbles, it kept him entertained for hours.
Live food is a great way to entertain him too, if you can get your hands on some live brine shrimp he'll probably love you forever for it. It sounds like you're doing just about all you can for him. Try rotating different ornaments/rocks/plants through his tank to keep him interested, and give him as many places to swim through and hide in as possible. I just upgraded my Betta tank, and even though he has a planted driftwood Anubius and duckweed to hide in, he still prefers to be visible, I think it's because he likes to watch me. So don't worry about him hiding and not being able to be seen!