I'd say try one of the dinner cruises, such as:
http://www.chaophrayaprincess.com/
I know some of the dinner cruises start at 8PM, so if you go by BTS you should have enough time.
Or try
Siam Nramit but you'll likely get there a bit late so might not get the full meal, but should enjoy the show.