All works correct. If you set "Can view forum" to Guest then guest can see all topics of that forum. It doesn't matter the "Can view topic" is disabled or not. The forum viewing has a hierarchy, so if the top level is visible (I mean forum) the sub-content (topics) is automatically become visible.
There is no way to hide topics but show forum list in wpForo. If a user of some usergroup can see the "X" forum, then it can also see all topics of "X" forum. The "Can view forum" dominates on "Can view topic" and the unchecking of "Can view topic" doesn't affect the view permission.
If we hide these content in the widget, we'll have to hide the titles too. Because the titles are post titles not topic titles. The preventing access to topic content was added recently. Before the "Can view forum" allowed viewing topics if the forum view is allowed. So this is why the recent post widget still shows the post content.
Whatever, I think we may work on this and add "Can view topic" permission checking dependence in the Recent Posts widget in near future releases.