The $F$-test that comes with a simple linear regression does not test both the slope and the intercept. It tests only the slope. The $p$-values from the $F$-test and the $t$-test of the slope of your predictor variable will be the same. Consider this simple example in
set.seed(8) # this makes the example perfectly reproducible
x = rnorm(20, mean=0, sd=1)
y = rnorm(20, mean=5, sd=1)
model = lm(y~x) # this fits a simple linear regression model
# Estimate Std. Error t value Pr(>|t|)
# (Intercept) 5.169948 0.265024 19.507 1.48e-13 ***
# x 0.002842 0.262160 0.011 0.991
# Residual standard error: 1.162 on 18 degrees of freedom
# Multiple R-squared: 6.53e-06, Adjusted R-squared: -0.05555
# F-statistic: 0.0001175 on 1 and 18 DF, p-value: 0.9915
The two $p$-values are the same, despite the fact that the intercept is wildly significant.
In addition, it is not correct to say that the $F$-test is checking "if [the model] explains more variance than it has error variance". There are several valid ways to understand what the $F$-test assesses, but in this context perhaps it is better thought of as checking if the addition of the predictor variable provides a significant improvement in model fit over the null model. With only one variable, and no other model specified, the null model is the intercept only model. That is why they are both tests of the same hypothesis and yield the same $p$-value.
To provide a more direct answer to your question: I don't see any flaw in your logic. However, it isn't very meaningful to say that you have two options for testing your model. Although they take different routes, they get to exactly the same place. Moreover, the $F$-statistic in this case will always be equal to $t^2$, and the $F$-test's denominator degrees of freedom will always be equal to the $t$-test's degrees of freedom.