Both these trees try to keep the most frequently accessed element at the top. Is there any difference between these two trees?
A Splay Tree is a specific variation of binary tree, specifying certain attributes of how the tree should be implemented. An Optimal Binary Search Tree is any binary tree for which the lookup cost is minimized.
One describes the implementation, the other describes the result.
So your question is a bit like asking "What's the difference between a Rally Car and a Fast Car?" The answer is that the question doesn't really make sense.