Found the 41 moves solution
There are multiple very similar solutions since the last part can be done in many ways.
The "zig-zag" pattern looked very promising, since the middle blocks only had to be moved one layer outwards each time the red block went top-to-bottom or bottom-to-top. The symmetry is broken when the red block enters the zig-zag, so every "turn" ends up having a slightly different optimal solution.
Thoughts on bonus question
How many blocks can be turned green in a single move?
0 or 1, as you either move a block next to the ball or not. Furthermore, more than 4 blocks can't be turned green this way sustainably, as you will have to move green blocks away from one of the sides of the ball to make space for another blue block. $n$ blocks need at least $2n - 4$ moves to convert in this way.
But the ball can also move:
The ball move that gives the most block converted in one go
...is to move into a 3-block niche.
But there's no way to convert any blocks in the next move after that, so it's still only 1.5 blocks per move. (but it's still the best last move).
There are two ways to move into a location with two neighbours, one better than the other:
It's possible to sustainably convert 2 blocks per move! But only if the blocks are correctly positioned to begin with.
Furthermore, the course is only 7x5, so after an alternating 7 and 5 moves of converting 2 blocks per move, a "turning" move must be inserted, converting at most 1 block.
As an additional observation, the first 4 moves on this level can't convert more than 4 blocks. Computer search update: the first 8 moves on this level can't convert more than 7 blocks.
That gives a lower bound:
- First 7 blocks in 8 moves
- Last 3 blocks in 1 move
- 15 blocks in the middle moves, where at least 2 blocks can't be converted two at a time. That's 9 more moves.
But that's only moving the ball. It's easy to see that the level also requires moving blocks. At 4 block moves, it's not possible for all 5 blocks at the end to leave that column, so the ball has to travel to the second-to-last column in that case. But then 4 blocks in front must be moved away first. That means there are at least 4 extra block moves. (and probably much more).
That's probably way way lower than the actual limit (39?,40?), but at least it's provable.